背景
上一篇《后端完整SpringBoot样例项目,无需其他依赖》描述了公司完整版SpringBoot样例项目。这一篇讲讲公司后端简版的SpringBoot样例项目。
先看框架代码,git地址在此
说明
简版样例项目因为依赖了公司其他的jar包,包括akbase,tiger,dove,client四个jar包。这样很多配置类、基础类、工具类都已经包含在内,构成简版样例项目。包结构如下图,包结构和配置文件说明可以查看上一篇
项目工程说明
目前的后端项目共有13个,aikang-auth、akbase、akconfig、akeureka、akgateway、akjob、akmq、auth-client、chronic、dove、im、iot、tiger。
SpringCloud组件
- akeureka:注册中心,其他项目启动时会将自己注册到注册中心。
- akconfig:配置中心,配置文件在resources目录中,其他项目启动时会从配置中心获取指定的配置。
- akgateway:网关项目,业务项目的统一出入口,有支持跨域、记录日志、限流、解析JWT、认证等功能。
业务项目
- auth:登录注册模块,包含了家属端、患者端、医生端、村医端、运管工具五端的登录注册。其中运管工具登录的时候会有对应的权限返回。
- chronic:主要的业务项目,包含了评估、群组、营养餐、消息、监测、积分、支付、处方、商城、his对接、任务、用户、转诊等业务功能。
- iot:硬件设备相关的业务项目,对接了阿里云的iot平台。包含了设备管理、设备绑定、数据上传、数据查询、数据推送及特定设备的相关功能等。
- im:聊天相关的项目,对接了腾讯的im聊天系统。包含了用户创建、消息转发、群聊管理、消息回调等功能。
- akmq:MQ的消费者项目,目前主要两个功能,发送微信、短信、音箱等各种消息和处理阿里云iot平台的消息回调。
定时任务
- akjob:定时任务项目,采用quartz调度框架,支持定时任务、延时任务以及动态的增删改。
jar包
- akbase:存放所有的bean、dao和mapper以及每个迭代版本需执行的SQL脚本。
- auth-client:定义了权限模块,目前只有运管工具需要用到权限。此外,这个jar包里面还有一些公共处理类,包括aop日志打印,异常处理,包装请求返回对象等,建议所有项目均引用此jar包。
- dove:MQ的生产者,引入此jar包可向MQ发送消息。
- tiger:引入了Redis配置,和所有调用微信接口的处理。
数据库说明
base_db:主要的业务数据库。chronic、im、auth、akmq、akjob使用的base_db数据库。
iot:iot硬件设备数据库。iot项目使用的iot数据库。