# mysql2dm-spring-boot-starter **Repository Path**: hardrocksman/mysql2dm-spring-boot-starter ## Basic Information - **Project Name**: mysql2dm-spring-boot-starter - **Description**: 用于基于MySQL的项目适配达梦数据库。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 13 - **Created**: 2024-12-04 - **Last Updated**: 2024-12-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # mysql2dm-spring-boot-starter ## 介绍 用于基于MySQL的项目适配达梦数据库。 ## 软件架构 基于Druid里提供的AST工具和Filter实现。在数据库连接层拦截, 上层无感知, 可以用mybatis、jpa甚至jdbcTemplate都可以拦截到。 Druid提供的AST开发简单、灵活、并且性能达到生产级别。 ## 安装教程 ### 前提 项目需要使用 `druid-spring-boot-starter`。 > 是通过`DruidDataSourceWrapper`类注册`Filter`的, 如果不想使用`druid-spring-boot-starter`, > 可以模仿`DruidDataSourceWrapper`自行注册`Filter` ### 安装 将本工程install到本地maven仓库后, 在待改造的项目引入pom即可 ``` com.myth mysql2dm-spring-boot-starter 1.0.0-SNAPSHOT ``` ## 使用说明 1. 工具中会自动判断当前数据库环境是否是达梦数据库, 是的时候才会拦截修改 ## 扩展说明 若发现有新的语法需要适配, 可以在`DmSupportVisitor`类里添加 ## 详细文档 ## GitHub地址 ## 未来计划 1. 支持`PrepareStatement`的占位符和参数顺序的同步调整。 > 修改sql的时候可能会使原有的占位符位置甚至个数发生变化, 因此对应的参数也需要对应的调整 2. 动态支持未使用`druid-spring-boot-starter`, 而只使用了`druid` > 只使用了`druid`的情况也能支持 3. 尝试支持未使用druid作为数据库连接池的情况 > 方案: > 1. 增加其他数据库连接池的自动配置类和拦截器类 > 2. 研究一下其他拦截点, 更通用的, 可以跟连接池类型也无关的 ## 联系我 邮箱: 1157151478@qq.com