国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

湖北移動(dòng)網(wǎng)站建設(shè)互聯(lián)網(wǎng)營銷的五個(gè)手段

湖北移動(dòng)網(wǎng)站建設(shè),互聯(lián)網(wǎng)營銷的五個(gè)手段,動(dòng)態(tài)門戶網(wǎng)站建設(shè)價(jià)格,北京專業(yè)網(wǎng)站維護(hù)公司SpringCloud------代碼demo(二) 編碼實(shí)操 以訂單——支付微服務(wù)模塊作為基礎(chǔ),開始逐漸擴(kuò)充 微服務(wù)架構(gòu)編碼構(gòu)建 1.約定 > 配置 > 編碼 2.IDEA新建project工作空間 3.Rest微服務(wù)工程構(gòu)建 總父工程 POM project module 首先創(chuàng)建maven項(xiàng)…

SpringCloud------代碼demo(二)

編碼實(shí)操
以訂單——支付微服務(wù)模塊作為基礎(chǔ),開始逐漸擴(kuò)充

微服務(wù)架構(gòu)編碼構(gòu)建

1.約定 > 配置 > 編碼
2.IDEA新建project工作空間
3.Rest微服務(wù)工程構(gòu)建

總父工程
POM
project
module

首先創(chuàng)建maven項(xiàng)目project:

項(xiàng)目編碼配置:
字符編碼選擇:
在這里插入圖片描述
注解生效配置:
選擇Default
在這里插入圖片描述
項(xiàng)目jdk版本配置:
在這里插入圖片描述

父工程pom文件設(shè)置:

刪掉父工程中的src目錄
1.maven坐標(biāo)以及打包方式

<groupId>com.springcloud2022</groupId><artifactId>SpingCloudDemo1</artifactId><version>1.0-SNAPSHOT</version><!--  修改打包方式,pom總的父工程--><packaging>pom</packaging>

2.統(tǒng)一管理jar包版本,緊跟packaging

<!--統(tǒng)一管理jar包版本--><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><junit.version>4.12</junit.version><log4j.version>1.2.17</log4j.version><lombok.version>1.18.10</lombok.version><mysql.version>8.0.18</mysql.version><druid.version>1.1.16</druid.version><mybatis.spring.boot.version>1.3.0</mybatis.spring.boot.version></properties>

3.父工程配置依賴管理
dependencyManagement作用:
子模塊繼承之后,提供作用,鎖定版本+子module不用寫groupId和version
(用于父類管理,一般是最頂層的父pom才會(huì)使用)
【dependencyManagement只是聲明依賴,但是并不引入依賴。 因此子項(xiàng)目需要顯示的聲明需要引入的依賴

maven跳過單元測試

在IDEA中標(biāo)注跳過單元測試,能夠有效的加快項(xiàng)目的啟動(dòng)速度
在這里插入圖片描述
父工程創(chuàng)建完成執(zhí)行mvn:install 將父工程發(fā)布到倉庫方便子工程繼承.

完整的pom文件

<?xml version="1.0" encoding="UTF-8" ?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.springcloud2022</groupId><artifactId>SpingCloudDemo1</artifactId><version>1.0-SNAPSHOT</version>
<!--  修改打包方式--><packaging>pom</packaging><!--統(tǒng)一管理jar包版本--><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><junit.version>4.12</junit.version><log4j.version>1.2.17</log4j.version><lombok.version>1.18.10</lombok.version><mysql.version>8.0.18</mysql.version><druid.version>1.1.16</druid.version><mybatis.spring.boot.version>1.3.0</mybatis.spring.boot.version></properties><!--dependencyManagement作用:子模塊繼承之后,提供作用:鎖定版本+子module不用寫groupId和version--><!--子module引入了版本號(hào),就是用子module的--><dependencyManagement><dependencies><dependency><groupId>org.apache.maven.plugins</groupId><artifactId>maven-project-info-reports-plugin</artifactId><version>3.0.0</version></dependency><!--spring boot 2.2.2--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>2.2.2.RELEASE</version><type>pom</type><scope>import</scope></dependency><!--spring cloud Hoxton.SR1--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>Hoxton.SR1</version><type>pom</type><scope>import</scope></dependency><!--spring cloud 阿里巴巴--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>2.1.0.RELEASE</version><type>pom</type><scope>import</scope></dependency><!--mysql--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version><scope>runtime</scope></dependency><!-- druid--><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>${druid.version}</version></dependency><!--mybatis--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>${mybatis.spring.boot.version}</version></dependency><!--junit--><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>${junit.version}</version></dependency><!--log4j--><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>${log4j.version}</version></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.7.5</version><configuration><fork>true</fork><addResources>true</addResources></configuration></plugin></plugins></build></project>

Rest微服務(wù)

客戶端消費(fèi)者:8080
服務(wù)提供者:8001

構(gòu)建步驟

1.cloud-provider-payment8001(微服務(wù)提供者支付Module模塊)
2.熱部署Devtools
3.cloud-consumer-order80
4.工程重構(gòu)

1.構(gòu)建cloud-provider-payment8001

生產(chǎn)者構(gòu)建

1.創(chuàng)建module
2.改POM
3.寫YML
4.主啟動(dòng)
5.業(yè)務(wù)類

pom文件:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>com.springcloud2022</groupId><artifactId>SpingCloudDemo1</artifactId><version>1.0-SNAPSHOT</version></parent><artifactId>cloud-provider-payment8001</artifactId><name>Archetype - cloud-provider-payment8001</name><url>http://maven.apache.org</url><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId>
<!--            <version></version>--></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope><optional>true</optional></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><optional>true</optional></dependency></dependencies>
</project>

YML文件
【注意需要新建application.yml文件】,并且文件類型要求為綠葉子形狀

# 開發(fā)環(huán)境配置
server:# 服務(wù)器的HTTP端口,默認(rèn)為8080port: 8001spring:application:name: cloud-payment-servicedatasource:type: com.alibaba.druid.pool.DruidDataSource   # 當(dāng)前數(shù)據(jù)庫驅(qū)動(dòng)類型driver-class-name: com.mysql.cj.jdbc.Driver  # mysql驅(qū)動(dòng)盤url: jdbc:mysql://xxxxx:3306/test?useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai&connectTimeout=2300username: rootpassword: 123456mybatis:mapperLocations: classpath:mapper/*.xmltype-aliases-package: com.provider.springcloud.**.entity # entity所在的路徑

新建主啟動(dòng)類

package com.provider.springcloud;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class PaymentMain8001 {public static void main(String[] args) {SpringApplication.run(PaymentMain8001.class,args);}
}

2.構(gòu)建cloud-consumer-order80

消費(fèi)者構(gòu)建cloud-consumer-order80
與生產(chǎn)者構(gòu)建步驟相同。不同點(diǎn)在于端口號(hào)不同
1.先采用RestTemplate 進(jìn)行Http接口調(diào)用
RestTemplate代碼:

RestTemplate 提供了多種便捷訪問遠(yuǎn)程Http服務(wù)的方法。
是一種簡單便捷訪問restful服務(wù)模板類,是Spring提供的用于訪問Rest服務(wù)的客戶端模板工具集。
使用restTemplate訪問restful接口非常的簡單粗暴無腦
(url,requestMap,ResponseBean.class)這三個(gè)參數(shù)分別代表
REST請(qǐng)求地址、請(qǐng)求參數(shù)、Http響應(yīng)轉(zhuǎn)換成的對(duì)象類型。

新建ApplicationContextConfig 遠(yuǎn)程調(diào)用配置類

/*** RestTemplate 配置類類*/
@Configuration
public class ApplicationContextConfig {@Beanpublic RestTemplate getRestTemplate(){return new RestTemplate();}
}

controller業(yè)務(wù)代碼

@AllArgsConstructor
@RestController
@RequestMapping("/consumer")
public class BnsBarcodeRegexController {@Autowiredprivate RestTemplate restTemplate;public static final String URL = "http://localhost:8001";/*** 通過調(diào)用RestTemplate,調(diào)用生產(chǎn)者接口*/@GetMapping("/create")public CommonResult<BnsBarcodeRegex> create(BnsBarcodeRegex regexDto){return restTemplate.postForObject(URL+"/bnsBarcodeRegex/create",regexDto,CommonResult.class);}/*** 通過調(diào)用RestTemplate,調(diào)用生產(chǎn)者接口*/@GetMapping("/parsingRegex")public CommonResult<BnsBarcodeRegex> parsingRegex(@RequestParam("id") String id){return restTemplate.postForObject(URL+"/bnsBarcodeRegex/parsingRegex",id,CommonResult.class);}
}

3.構(gòu)建cloud-api-common

工程重構(gòu)——將消費(fèi)者和生產(chǎn)者中相同的代碼抽象出來,比如entity部分
抽象出來,打成包,然后子模塊引入依賴。
新建一個(gè) cloud-api-commons(可以放重復(fù)的代碼、以及api接口、一些工具類等等)

構(gòu)建cloud-api-common的目的是由于生產(chǎn)者、消費(fèi)者都使用了相同的實(shí)體類:BnsBarcodeRegex、CommonResult。
因此需要將其抽象出來。
通過:
mvn:insatll 命令
1.將生產(chǎn)者、消費(fèi)者的實(shí)體類文件夾刪除
2.在生產(chǎn)者、消費(fèi)者的pom文件中引入cloud-api-common的依賴。

<dependency><groupId>com.springcloud2022</groupId><artifactId>cloud-api-common</artifactId><version>1.0-SNAPSHOT</version></dependency>
http://aloenet.com.cn/news/46098.html

相關(guān)文章:

  • 網(wǎng)站怎么做推廣和優(yōu)化seo推廣知識(shí)
  • 泰州網(wǎng)站建設(shè)多少錢北京環(huán)球影城每日客流怎么看
  • 做網(wǎng)站建設(shè)價(jià)格網(wǎng)絡(luò)軟文營銷案例3篇
  • 網(wǎng)站建設(shè)需要多少錢小江網(wǎng)頁設(shè)計(jì)seo網(wǎng)絡(luò)推廣外包公司
  • 網(wǎng)站開發(fā)需求書接推廣一般多少錢
  • 昆明房產(chǎn)網(wǎng)站建設(shè)seo全網(wǎng)營銷
  • 建設(shè)網(wǎng)站公司 優(yōu)幫云網(wǎng)站排名優(yōu)化專業(yè)定制
  • 哪些網(wǎng)站可以做調(diào)查賺錢廣告關(guān)鍵詞有哪些類型
  • 政府網(wǎng)站用的什么cms系統(tǒng)常州seo排名收費(fèi)
  • 泉州seo-泉州網(wǎng)站建設(shè)公司正規(guī)推廣平臺(tái)有哪些
  • 外貿(mào)網(wǎng)站銷售方式好用搜索引擎排名
  • dw制作網(wǎng)站站長聯(lián)盟
  • 做網(wǎng)站違法嘛萬能軟文模板
  • 做免費(fèi)網(wǎng)站怎么賺錢品牌推廣方案
  • 周杰倫做的廣告網(wǎng)站英文外鏈代發(fā)
  • 贛州曬房網(wǎng)百度seo排名360
  • 合肥網(wǎng)站 技術(shù)支持 上誠科技餐飲營銷方案
  • 成都個(gè)人建網(wǎng)站關(guān)鍵詞優(yōu)化哪家強(qiáng)
  • 中國最新軍事新聞 新聞seo外鏈發(fā)布軟件
  • 免費(fèi)網(wǎng)站下載軟件免費(fèi)個(gè)人網(wǎng)頁制作
  • 我做的網(wǎng)站服務(wù)器別人沒法左鍵點(diǎn)擊下載呢寧波谷歌seo
  • 有賬號(hào)和密碼怎么進(jìn)公司網(wǎng)站后臺(tái)百度seo如何做
  • ??诰W(wǎng)站建設(shè)解決方案云南疫情最新數(shù)據(jù)消息中高風(fēng)險(xiǎn)地區(qū)
  • wordpress免費(fèi)主題模板seo運(yùn)營是做什么的
  • 中國網(wǎng)庫做網(wǎng)站線下推廣方案
  • 動(dòng)漫做h在線觀看網(wǎng)站b2b模式的電商平臺(tái)有哪些
  • 創(chuàng)業(yè)初期要建立公司的網(wǎng)站嗎鄭州百度關(guān)鍵詞seo
  • 網(wǎng)站大屏輪播圖效果怎么做公眾號(hào)排名優(yōu)化軟件
  • 怎樣做永久網(wǎng)站二維碼北京seo公司有哪些
  • 網(wǎng)站做線上銷售蘇州百度關(guān)鍵詞優(yōu)化