# business-modules 业务模块
business-modules下是你的业务模块,crm-example是我们提供的一个示例服务模块,您可以参考该示例创建自己的业务模块。
diboot-devtools是在你的业务模块下使用的,具体可参照crm-example引入devtools依赖及配置devtools参数。
# crm-example 业务服务模块示例
# 主要配置参数
- server.port: 8201,默认端口
- spring.datasource.*: 数据库连接信息
- diboot.devtools.*: devtools开发助理相关配置参数
# 核心代码说明
- ResourceServerConfig: 资源服务器配置
- SpringWebConfig: Spring Web MVC相关配置
# 业务模块中使用 diboot-devtools
微服务场景的 diboot-devtools 工作于你的业务模块下(其他模块是diboot封装好的公用模块,也不需要生成代码),使用方式同spring boot版本一样, 直接依赖devtools包,配置相关参数,随模块启动即可。
- 启动业务模块应用,从控制台进入devtools页面
- 首先生成 diboot-core 的基础代码(项目中需要继承扩展的Base类等)
- 使用"数据库表管理"维护表结构及生成后端代码等
- 使用"前端代码生成"(订阅功能)生成前端CRUD功能及面板组件等
devtools具体使用可参考: diboot-devtools文档
# 使用跨服务绑定
diboot内核提供的关联数据绑定能力,在diboot-cloud下不仅模块内的对象可用,还可以支持服务间的跨服务数据绑定。可有效避免跨服务的数据冗余问题。 具体使用步骤:
- 需要被其他服务绑定的对象,Entity类上添加@Module注解,指定来自哪个模块。
@Module("user-center")
public class IamUser {
}
1
2
3
2
3
- 在其来源服务模块下添加remoteBinding接口,具体可参考crm-example中的CommonController
# @InnerApi 内部调用接口注解
@InnerApi是用于服务间内部调用的接口声明,添加该注解后,该接口仅允许Feign调用,禁止前端及其他形式的调用。