61 Star 84 Fork 10

fastjrun / demo

2019-03-10 10:42
fastjrun

工程模型升级,重新划分组件和集成关系

快嘉框架将一个标准的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相关接口定义及通信类(根据接口定义文件生成)
  1. 基于Spring MVC+mybatis3,应用数据库mysql,单测数据库h2
  2. 使用spring集成主应用
  3. 使用xml文件维护接口定义,并作为接口层代码的输入
  4. 使用sql文件作为持久层代码生成的输入

使用快嘉代码生成插件替换快嘉代码生成代理插件

  1. 插件生成代码功能本地完成,不需要和快嘉代码生成能力平台交互
    • 不再需要pdm,只需要建库脚本sql
    • 支持rpc接口
    • 日志组件升级为log4j2
  2. 插件已经上传到中央仓库,源码参考快嘉接口 sdk 生成 Maven 插件

提供了快嘉框架脚手架,为快速启动新项目开发提供帮助

本工程脚手架已经上传到中央仓库,源码参考快嘉框架脚手架

最后提交信息为: fix
Java
1
https://gitee.com/fastjrun/demo.git
git@gitee.com:fastjrun/demo.git
fastjrun
demo
demo

搜索帮助