您好,登錄后才能下訂單哦!
這篇文章主要介紹“基于java SpringCloud怎么搭建微服務(wù)”,在日常操作中,相信很多人在基于java SpringCloud怎么搭建微服務(wù)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”基于java SpringCloud怎么搭建微服務(wù)”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
1、jdk1.8
2、springboot 2.0.6.RELEASE 以及SpringCloud相關(guān)服務(wù)
3、idea + maven
1itstack-demo-ddd-case
2└── src
3 ├── main
4 │ ├── java
5 │ │ └── org.itstack.demo
6 │ │ ├── application
7 │ │ │ ├── MallRuleService.java
8 │ │ │ └── MallTreeService.java
9 │ │ ├── domain
10 │ │ │ ├── rule
11 │ │ │ │ ├── model
12 │ │ │ │ │ ├── aggregates
13 │ │ │ │ │ │ └── UserRichInfo.java
14 │ │ │ │ │ └── vo
15 │ │ │ │ │ ├── DecisionMatter.java
16 │ │ │ │ │ ├── EngineResult.java
17 │ │ │ │ │ ├── TreeNodeInfo.java
18 │ │ │ │ │ ├── TreeNodeLineInfo.java
19 │ │ │ │ │ └── UserSchool.java
20 │ │ │ │ ├── repository
21 │ │ │ │ │ └── IRuleRepository.java
22 │ │ │ │ └── service
23 │ │ │ │ ├── engine
24 │ │ │ │ │ ├── impl
25 │ │ │ │ │ └── EngineFilter.java
26 │ │ │ │ ├── logic
27 │ │ │ │ │ ├── impl
28 │ │ │ │ │ └── LogicFilter.java
29 │ │ │ │ └── MallRuleServiceImpl.java
30 │ │ │ └── tree
31 │ │ │ ├── model
32 │ │ │ │ ├── aggregates
33 │ │ │ │ │ └── TreeCollect.java
34 │ │ │ │ └── vo
35 │ │ │ │ ├── TreeInfo.java
36 │ │ │ │ └── TreeRulePoint.java
37 │ │ │ ├── repository
38 │ │ │ │ └── ITreeRepository.java
39 │ │ │ └── service
40 │ │ │ └── MallTreeServiceImpl.java
41 │ │ ├── infrastructure
42 │ │ │ ├── common
43 │ │ │ │ └── Constants.java
44 │ │ │ ├── dao
45 │ │ │ │ ├── RuleTreeDao.java
46 │ │ │ │ ├── RuleTreeNodeDao.java
47 │ │ │ │ └── RuleTreeNodeLineDao.java
48 │ │ │ ├── po
49 │ │ │ │ ├── RuleTree.java
50 │ │ │ │ ├── RuleTreeConfig.java
51 │ │ │ │ ├── RuleTreeNode.java
52 │ │ │ │ └── RuleTreeNodeLine.java
53 │ │ │ ├── repository
54 │ │ │ │ ├── cache
55 │ │ │ │ │ └── RuleCacheRepository.java
56 │ │ │ │ ├── mysql
57 │ │ │ │ │ ├── RuleMysqlRepository.java
58 │ │ │ │ │ └── TreeMysqlRepository.java
59 │ │ │ │ ├── RuleRepository.java
60 │ │ │ │ └── TreeRepository.java
61 │ │ │ └── util
62 │ │ │ └── CacheUtil.java
63 │ │ ├── interfaces
64 │ │ │ ├── dto
65 │ │ │ │ ├── DecisionMatterDTO.java
66 │ │ │ │ └── TreeDTO.java
67 │ │ │ └── DDDController.java
68 │ │ └── DDDApplication.java
69 │ └── resources
70 │ ├── mybatis
71 │ └── application.yml
72 └── test
73 └── java
74 └── org.itstack.demo.test
75 └── ApiTest.java
1itstack-demo-ddd-eureka-server
2└── src
3 ├── main
4 │ ├── java
5 │ │ └── org.itstack.demo
6 │ │ └── EurekaServerApplication.java
7 │ └── resources
8 │ └── application.yml
9 └── test
10 └── java
11 └── org.itstack.demo.test
12 └── ApiTest.java
EurekaServerApplication.java | 啟動服務(wù)
1/**
2 * 微信公眾號:bugstack蟲洞棧 | 專注原創(chuàng)技術(shù)專題案例
3 * 論壇:http://bugstack.cn
4 * Create by 付政委 on @2019
5 */
6@SpringBootApplication
7@EnableEurekaServer
8public class EurekaServerApplication {
9
10 public static void main(String[] args) {
11 SpringApplication.run( EurekaServerApplication.class, args );
12 }
13
14}
application.yml | 服務(wù)配置
1server:
2 port: 8989
3
4eureka:
5 instance:
6 hostname: localhost
7 client:
8 registerWithEureka: false
9 fetchRegistry: false
10 serviceUrl:
11 defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
12
13spring:
14 application:
15 name: itstack-demo-ddd-eureka-server
1itstack-demo-ddd-feign
2└── src
3 ├── main
4 │ ├── java
5 │ │ └── org.itstack.demo
6 │ │ ├── domain
7 │ │ │ └── TreeDTO.java
8 │ │ ├── service
9 │ │ │ └── MallService.java
10 │ │ ├── web
11 │ │ │ └── FeignController.java
12 │ │ └── FeignApplication.java
13 │ └── resources
14 │ └── application.yml
15 └── test
16 └── java
17 └── org.itstack.demo.test
18 └── ApiTest.java
MallService.java | 通過注冊方式調(diào)用API
1/**
2 * 微信公眾號:bugstack蟲洞棧 | 專注原創(chuàng)技術(shù)專題案例
3 * 論壇:http://bugstack.cn
4 * Create by 付政委 on @2019
5 */
6@FeignClient(value = "itstack-demo-ddd-case")
7public interface MallService {
8
9 @RequestMapping(value = "/api/tree/queryTreeSummaryInfo", method = RequestMethod.POST)
10 Object queryTreeSummaryInfo(@RequestBody TreeDTO request);
11
12}
FeignApplication.java | 啟動服務(wù)
1/**
2 * 微信公眾號:bugstack蟲洞棧 | 專注原創(chuàng)技術(shù)專題案例
3 * 論壇:http://bugstack.cn
4 * Create by 付政委 on @2019
5 */
6@SpringBootApplication
7@EnableEurekaClient
8@EnableDiscoveryClient
9@EnableFeignClients
10public class FeignApplication {
11
12 public static void main(String[] args) {
13 SpringApplication.run(FeignApplication.class, args);
14 }
15
16}
application.yml | 服務(wù)配置
1server:
2 port: 9090
3
4spring:
5 application:
6 name: itstack-demo-ddd-feign
7
8eureka:
9 client:
10 serviceUrl:
11 defaultZone: http://localhost:8989/eureka/
1itstack-demo-ddd-zuul
2└── src
3 ├── main
4 │ ├── java
5 │ │ └── org.itstack.demo
6 │ │ └── ZuulApplication.java
7 │ └── resources
8 │ └── application.yml
9 └── test
10 └── java
11 └── org.itstack.demo.test
12 └── ApiTest.java
ZuulApplication.java | 啟動服務(wù)
1/**
2 * 微信公眾號:bugstack蟲洞棧 | 專注原創(chuàng)技術(shù)專題案例
3 * 論壇:http://bugstack.cn
4 * Create by 付政委 on @2019
5 */
6@SpringBootApplication
7@EnableZuulProxy
8@EnableEurekaClient
9@EnableDiscoveryClient
10public class ZuulApplication {
11
12 public static void main(String[] args) {
13 SpringApplication.run(ZuulApplication.class, args);
14 }
15
16}
application.yml | 服務(wù)配置{本案例是靜態(tài)路由,按需可以開發(fā)為動態(tài)路由}
1server:
2 port: 9191
3
4spring:
5 application:
6 name: itstack-demo-ddd-zuul
7
8eureka:
9 client:
10 serviceUrl:
11 defaultZone: http://localhost:8989/eureka/
12zuul:
13 routes:
14 api-a:
15 path: /route-a/**
16 serviceId: itstack-demo-ddd-feign
17
按照順序啟動;itstack-demo-ddd-eureka-server、itstack-demo-ddd-case{可以模擬啟動多個}、itstack-demo-ddd-feign、itstack-demo-ddd-zuul
訪問;http://localhost:8989/ | 服務(wù)中心
訪問:http://localhost:9191/route-a/api/queryTreeSummaryInfo?treeId=10001 | 通過網(wǎng)關(guān)路由調(diào)用DDD服務(wù)接口
到此,關(guān)于“基于java SpringCloud怎么搭建微服務(wù)”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。