maven多模块构建springcloud项目

正经学徒,佛系记录,不搞事情

参考上文:https://blog.csdn.net/qq_31748587/article/details/84849520

基于maven多模块构建springcloud项目实现简单的服务注册发现,项目最终结构如下:

maven多模块构建springcloud项目_第1张图片

cloud_parent:父工程,统一管理jar包依赖

eureka_server:注册中心服务

eureka_client:服务提供者

eureka_feign:服务消费者

第一步:创建一个空项目

maven多模块构建springcloud项目_第2张图片

第二步:创建父工程module

maven多模块构建springcloud项目_第3张图片

maven多模块构建springcloud项目_第4张图片

仅保留pom.xml和.iml文件,xml如下:



	4.0.0
	
		org.springframework.boot
		spring-boot-starter-parent
		1.5.3.RELEASE
		 
	
	com.mn
	cloud_parent
	0.0.1-SNAPSHOT
	
	pom
	cloud_parent
	Demo project for Spring Boot
	
	
		eureka_server
		eureka_cilent
		eureka_feign
	

	
	
		UTF-8
		UTF-8
		1.8
		Dalston.RELEASE
	
	
	
		
			org.springframework.cloud
			spring-cloud-starter
		
		
			org.springframework.cloud
			spring-cloud-starter-eureka-server
		
		
			org.springframework.boot
			spring-boot-starter-test
			test
		
	
	
	
		
			
				org.springframework.cloud
				spring-cloud-dependencies
				${spring-cloud.version}
				pom
				import
			
		
	

	
		
			
				org.springframework.boot
				spring-boot-maven-plugin
			
		
	

第三步:创建注册中心eureka_server

右键父工程

创建springboot项目

maven多模块构建springcloud项目_第5张图片

maven多模块构建springcloud项目_第6张图片

maven多模块构建springcloud项目_第7张图片

注意项目的路径,存放在父工程内

pom文件只需保留parent,因为需要的jar包在父工程中



	4.0.0
	
		cloud_parent
		com.mn
		0.0.1-SNAPSHOT
	
	eureka_server

	
	

修改application.properties文件

spring.application.name=eureka-server
server.port=1001
eureka.instance.hostname=localhost
#表示是否将自己注册到Eureka Server,默认为true
eureka.client.register-with-eureka=false
#表示是否从Eureka Server获取注册信息,默认为true
eureka.client.fetch-registry=false

启动类追加注解

@EnableEurekaServer

第四步:创建服务提供者eureka_client

eureka_server项目流程

修改配置文件application.properties

spring.application.name=eureka-client
server.port=1002
eureka.client.serviceUrl.defaultZone=http://localhost:1001/eureka/

添加TestController

@RestController
public class TestController {
    @GetMapping("/get")
    public String get() {
        return "试试看可不可以";
    }
}

启动类删除@EnableEurekaServer,添加注解

@EnableDiscoveryClient

第五步:创建服务消费者eureka_feign

eureka_client项目流程

因为用到feign,因此pom.xml文件追加依赖


    org.springframework.cloud
    spring-cloud-starter-feign

修改配置文件application.properties

spring.application.name=eureka-feign
server.port=1003
eureka.client.serviceUrl.defaultZone=http://localhost:1001/eureka/

启动类添加注解

@EnableFeignClients
@EnableDiscoveryClient

添加接口类TestInterface,name与服务名相同(注:服务名不能带有下划线)

@FeignClient(name= "eureka-client")
public interface TestInterface {
    @GetMapping(value = "/get")
    String get();
}

添加控制类TestController

@RestController
public class TestController {
    @Autowired
    TestInterface testInterface;

    @GetMapping("/getByFeign")
    public String get() {
        return testInterface.get();
    }
}

第六步:测试

依次启动 eureka_server,eureka_client,eureka_feign

浏览器访问:http://127.0.0.1:1001/表明注册中心成功启动

maven多模块构建springcloud项目_第8张图片

浏览器访问:http://127.0.0.1:1002/get 表明服务提供者启动正常

浏览器访问:http://127.0.0.1:1003/getByFeign 表明服务消费者启动正常

本文只是作为一个引子,入门如何使用maven多模块来搭建微服务,实际项目中,项目可以根据业务需求,按业务拆分或者代码分层,或者二者结合使用,还请举一反三。

项目地址:

https://pan.baidu.com/s/1FZ9M48sY8xbb41WwP4G1Bg 提取码: eacf

你可能感兴趣的:(maven,springcloud,springboot)