共计 796 个字符,预计需要花费 2 分钟才能阅读完成。
最近在看《JavaEE 开发的颠覆者 Spring Boot 实战》,顺便写了一个小框架,在这里作为记录,供以后回顾
github:源码地址
当前进度
描述
core 核心模块
aop 定义(aop 包)
日志切面
异常切面
抽象(base 包)
controller 抽象,封装返回结果对象 |controler 异常通知器
service 抽象,为业务模块提供通用的业务逻辑,如增、删、改、查等
mapper 抽象,为业务模块提供通用的持久化逻辑,如增、删、改、查等。通过反射技术结合 Mybatis 的注解,提供通用的 SQL
entity 抽象,定义通用的字段,如创建人、创建时间、修改人、修改时间、删除标识等
通用工具
Spring 上下文工具
Spring 属性文件工具
配置
Http 请求过滤器条件注入,根据配置文件中定义的 spring.http.encoding 的配置,动态创建 CharacterEncodingFilter
通用配置
druid 数据源、监视器配置
动态数据源注册器 引入
bean 扫描目录的定义,扫描范围是 com.wt 下属的所有包
多数据源(datasource 包)
核心代码是 DynamicDataSource,通过继承 Springboot 提供的 DynamicDataSource,来实现多数据源
定义了 aop 切面 DynamicDattaSourceInterceptor,拦截方法调用,发现有指定的 @TargetDataSource 注解,就会将当前线程的数据源指定为注解指定的数据源
多数据源相关的配置类,利用了 Springboot 的动态配置特性,定义 spring.factories 文件指定 DynamicDataSourceConfiguration 配置类,根据配置文件中的 slave.enable 的值决定是否加载动态数据源的相关配置
反射工具
j2ee 依赖管理,添加必要的 web 项目依赖
root maven 构建方式定义
version 管理依赖的版本