MyBatis databaseId实现多种数据类型实现
最近的项目,最开始是使用MySQL进行开发,最终部署到多地区服务器。然而前几天说,有个地区的数据库使用的是Oracle。于是我要寻找一种方案,能让MySQL语法和Oracle语法同时存在。最终发现了MyBatis的这个神奇功能。 首先,配一个数据库配置: import org.apache.ibatis.mapping.DatabaseIdProvider; import org.apache.ibatis.mapping.VendorDatabaseIdProvider; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import java.util.Properties; @Configuration public class DatabaseConfig { /** * 自动识别使用的数据库类型 * 在mapper.xml中databaseId的值就是跟这里对应, * 如果没有databaseId选择则说明该sql适用所有数据库 * */ @Bean public DatabaseIdProvider getDatabaseIdProvider(){ DatabaseIdProvider