准备工作

开发工具

推荐使用IntelliJ IDEA开发,需要安装Lombok Plugin。

开发环境

如果需要使用注册中心等组件进行本地服务联调,按照以下步骤搭建环境:

  1. 使用Spring Boot CLI安装Spring Cloud CLI:

    spring install org.springframework.cloud:spring-cloud-cli:2.0.0.BUILD-SNAPSHOT

  2. 指定需要启动的服务端(spring cloud eureka必选,其他根据需要选择):

    spring cloud eureka configserver zipkin hystrixdashboard

  3. 下载并安装RabbitMQ:http://www.rabbitmq.com/download.html

模块依赖

系统基于Spring Boot 2.0.4.RELEASE和Spring Cloud Finchley.SR1开发。

开发依赖([M]代表必选依赖,[O]代表可选依赖):

  • [M]spring-boot-starter-web:Web开发依赖,提供MVC等功能

  • [M]spring-boot-starter-data-jpa:JPA依赖,提供数据持久层方案

  • [O]spring-boot-starter-cache:缓存依赖,提供缓存解决方案

  • [O]spring-cloud-starter-netflix-hystrix:熔断依赖,提供熔断机制

  • [O]spring-cloud-starter-openfeign:需要远程调用其他服务的模块,增加此依赖

  • [O]spring-cloud-stream:需要事件驱动的模块,增加此依赖

  • [O]spring-cloud-stream-binder-rabbit:需要事件驱动的模块,增加此依赖

  • [O]lombok:提供便捷的注解,简化POJO配置

  • [M]springfox-swagger2:Swagger API定义工具

  • [M]springfox-swagger-ui:Swagger API定义页面

  • [M]commons-lang:基础的工具

  • [M]commons-beans:实体映射工具

  • [M]commons-jpa:JPA查询工具

运维依赖(所有业务模块必选依赖):

  • spring-boot-starter-security:Spring Security依赖,开放监控页面权限

  • spring-boot-admin-starter-client:系统运行状态监控

  • spring-cloud-starter-netflix-eureka-client:服务注册和发现

  • spring-cloud-starter-config:统一配置管理

  • spring-cloud-starter-zipkin:服务调用跟踪

其他依赖(根据需要选择):

  • spring-cloud-starter-netflix-zuul:网关模块

  • spring-boot-admin-starter-server:系统监控服务端

  • spring-cloud-starter-netflix-eureka-server:注册中心

  • spring-cloud-config-server:配置中心

  • spring-cloud-starter-netflix-hystrix-dashboard:熔断监控服务端

  • spring-cloud-starter-netflix-turbine:熔断监控汇总服务端

  • spring-boot-devtools:开发者工具,提供类的热部署等功能

  • spring-boot-starter-test:基本的测试库依赖

Last updated