springboot插件化开发
一 简介
1.1 使用框架
使用spring boot插件式开发集成包SpringBoot Plugin Framework框架。此框架可在SpringBoot项目上开发出用于扩展项目的插件,可在插件模块中单独定义接口、静态文件、mybatis-xml等扩展功能。
这个框架的核心功能:
- 插件配置式插拔于springboot项目。
- 在springboot上可以进行插件式开发, 扩展性极强, 可以针对不同项目开发不同插件, 进行不同插件jar包的部署。
- 可通过配置文件指定要启用或者禁用插件。
- 支持上传插件和插件配置文件到服务器, 并且无需重启主程序, 动态部署插件、更新插件。
- 支持查看插件运行状态, 查看插件安装位置。
- 无需重启主程序, 动态的安装插件、卸载插件、启用插件、停止插件、备份插件、删除插件。
- 在插件应用模块上可以使用Spring注解定义组件, 进行依赖注入。
- 支持在插件中开发Rest接口。
- 支持在插件中单独定义持久层访问等需求。
- 可以遵循主程序提供的插件接口开发任意扩展功能。
- 支持注解进行任意业务场景扩展, 并使用定义的坐标进行场景命中。
- 插件可以根据生产和开发环境自定义独立的配置文件。目前只支持yml文件。
- 支持自定义扩展开发接口, 使用者可以在预留接口上扩展额外功能。
- 支持插件之间的通信。
- 支持插件接口文档:
Swagger
、SpringDoc
。
- 插件支持
拦截器
的定制开发。
1.2扩展包功能
- SpringBoot Mybatis扩展包
- 支持在插件中自定义Mapper接口、Mapper xml 以及对应的实体bean
- 支持插件独立定义数据源
- 支持集成
Mybatis
- 支持集成
Mybatis-Plus
- 支持集成
Tk-Mybatis
详见 插件SpringBoot Mybatis扩展(opens new window)
- 静态资源访问扩展包
- 支持通过http访问插件中静态资源
- 支持集成
Thymeleaf
详见 插件静态资源访问扩展(opens new window)
#运行环境
- jdk1.8+
- apache maven 3.6
- spring-boot 2.0.0+