工程模型升级,重新划分组件和集成关系
快嘉框架将一个标准的J2EE项目划分4类模块如下:
-
交付模块
- task:批处理任务,依赖biz模块,目前集成的任务框架是quartz
- provider:rpc和http服务,依赖biz模块,目前集成的rpc框架是dubbo,http框架是spring mvc,以war包形式发布
- api:接口相关dto和rpc接口定义(根据接口定义文件生成)
-
业务模块
- base:基于mybatis注解使用方式的单表CRUD代码(根据sql文件生成)
- bundle:接口相关dto、 rpc接口定义及实现、controller和依赖的service定义(根据接口定义文件生成)
- biz.:业务模块,依赖base和bundle模块,除了bundle中service的实现会集中在这个模块,还包括一些没有定义在接口和任务层面的service及其实现;此外还包括一些工具类、与其他第三方的通信类、自定义的持久层访问类,错误码常量等
-
开发辅助模块
- bundle-mock:接口相关dto、rpc相关接口和实现、controller、依赖的service定义及service的简单mock,这里的dto、 controller 都是带swagger-ui标签的,此外,对于rpc相关接口,也提供了带swagger-ui标签的controller (根据接口定义文件生成)
- provider-mock: rpc服务和http服务,依赖bundle-mock模块,目前集成的rpc框架是dubbo,http框架是spring mvc,以war包形式发布,可作为接口文档服务器和联调服务使用
-
测试模块
- test:单元测试模块、依赖biz、base和bundle,基于testng框架实现,
- api-test: 接口测试模块,接口相关dto、 rpc相关接口定义及通信类(根据接口定义文件生成)
- 基于Spring MVC+mybatis3,应用数据库mysql,单测数据库h2
- 使用spring集成主应用
- 使用xml文件维护接口定义,并作为接口层代码的输入
- 使用sql文件作为持久层代码生成的输入
使用快嘉代码生成插件替换快嘉代码生成代理插件
- 插件生成代码功能本地完成,不需要和快嘉代码生成能力平台交互
- 不再需要pdm,只需要建库脚本sql
- 支持rpc接口
- 日志组件升级为log4j2
- 插件已经上传到中央仓库,源码参考快嘉接口 sdk 生成 Maven 插件
提供了快嘉框架脚手架,为快速启动新项目开发提供帮助
本工程脚手架已经上传到中央仓库,源码参考快嘉框架脚手架