将springboot升级到springcloud

3 篇文章 0 订阅

前述:

之前公司来了个项目,那会儿自己用的是springboot框架搭的,后来又接手了公司另一个已开发的项目,是springcloud架构的微服务项目,而且要和之前的自己用springboot项目要相互打通,一个是springboot,一个springcloud。那么相互之间如何调用的问题便抛了出来

springcloud服务之间是服务调用,而未集成cloud的springboot框架的项目与springcloud项目之间,肯定是不可以服务调用,那么我能想到的调用方式就是自己写httpclient来进行接口调用(虽然fegin本质也是接口调用),当我们习惯了springcloud的服务之间的服务调用后,再去自己写httpclient,会发现,哇....这好麻烦啊....

想偷懒?那就把springboot升级一下吧!在产品迭代的空隙间,闲来无事,就把springboot升级一下!

概要:

我的springboot项目版本<version>1.5.6.RELEASE</version>,根据springboot与cloud的版本对应关系,我选择了<spring-cloud.version>Edgware.SR3</spring-cloud.version>,具体springcloud版本说明,可参考我的另一篇文章https://blog.csdn.net/With_Her/article/details/98759517

升级的思想是:
1.把springcloud的jar在pom中引入
2.在application的配置文件中,加入eureka与cloud等的配置
3.在启动器中加入eureka与fegin等相关注解

开始!

1.添加pom

在springboot框架的pom基础上,直接添加springcloud相关的pom

<properties>
        <spring-cloud.version>Edgware.SR3</spring-cloud.version>
</properties>


<dependencies>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-config</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-feign</artifactId>
			<version>1.4.4.RELEASE</version>
		</dependency>
        <!--<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-bus-amqp</artifactId>
		</dependency>-->
		<!--<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-zipkin</artifactId>
		</dependency>-->
</dependencies>
<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>${spring-cloud.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
</dependencyManagement>

上面引入的这几个pom其实就是springcloud的各个核心组件,有兴趣的可以看我的另一篇文章https://blog.csdn.net/With_Her/article/details/97165385

2.application中加入配置

#cloud
spring:
    cloud:
      config:
        discovery:
          enabled: true
          service-id: service_name

#定义项目在eureka中的服务名
spring:
    application:
       name: service_name

#eureka
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:8761/eureka
  instance:
    #租期更新时间间隔
    lease-renewal-interval-in-seconds: 10
    #租期到期时间
    lease-expiration-duration-in-seconds: 10
    prefer-ip-address: true

3.启动器上加入注解

@SpringBootApplication
@ServletComponentScan   //Servlet、Filter、Listener 可以直接通过 @WebServlet、@WebFilter、@WebListener 注解自动注册,无需其他代码。
@EnableScheduling  //启动线程(task定时任务需要此注解)
@EnableTransactionManagement(proxyTargetClass = true)//事务管理
@EnableEurekaClient
@EnableFeignClients(basePackages = {"com.package.*"})
public class Application extends SpringBootServletInitializer {

}

然后就好啦!

这是我本次升级所有的操作,但是对于其中的一些配置与注解的作用不是太了解,还需要再去看看

有很多不足,希望您借鉴参考后,如果有问题,及时反馈给我!相互进步!

 

参考文档:https://blog.csdn.net/qq_32423845/article/details/82016331

转载请注明出处.

 

  • 4
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值