数据库持久层架构
大约 2 分钟
一,数据库持久层架构

二,数据库组件
2.1 Druid
Druid是Java语言中最好的数据库连接池。Druid能够提供强大的监控和扩展功能。
2.2 MyBatis-Plus
MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
- Github地址:MyBatis-Plus
- 文档地址:MyBatis-Plus
2.3 dynamic-datasource
dynamic-datasource-spring-boot-starter 是一个基于springboot的快速集成多数据源的启动器。
- Github地址:dynamic-datasource
- 文档地址:dynamic-datasource
- 示例:dynamic-datasource
2.4 ShardingSphere
Apache ShardingSphere 是一款分布式 SQL 事务和查询引擎,可通过数据分片、弹性伸缩、加密等能力对任意数据库进行增强。
- Github地址:ShardingSphere
- 文档地址:ShardingSphere
- 示例:ShardingSphere
2.5 AnyLine
AnyLine的核心是一个基于spring-jdbc生态的(No-ORM)数据库操作工具,摒弃了各种繁琐呆板的Service/Dao/Entity/*O/Mapper 没有mybatis 没有各种配置 各种O。
三、二开阅读建议
数据库开发不要只看持久层组件,还需要结合业务表、接口和前端页面一起判断影响范围。
| 场景 | 推荐文档 |
|---|---|
| 按业务查表 | 数据模型与接口映射 |
| 按接口查模块 | 后端模块映射 |
| 查数据架构 | 数据与数据库架构 |
| 查前端联调 | Vue3 前端开发与联调 |
四、SQL 修改注意事项
- 新增字段需要同步 Domain、Mapper、VO/DTO、前端表单和导入导出。
- 多数据库版本需要同步达梦、人大金仓、Oracle、Postgres、SQL Server 脚本。
- 高频设备数据优先使用时序库链路,不要无节制写入 MySQL。
- 涉及租户和数据权限的表,查询条件要同步处理机构和用户范围。
- 升级脚本上线前必须在测试库演练,并准备回滚方案。
