6、mybatis主配置文件之databaseIdProvider
生活随笔
收集整理的這篇文章主要介紹了
6、mybatis主配置文件之databaseIdProvider
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 1、databaseIdProvider:支持多數(shù)據(jù)庫廠商的語句
- 2、增加oracle 的驅(qū)動(dòng)配置文件pom.xml
- 3、主配置文件增加databaseIdProvider配置
- 4、外部引用配置增加oracle的配置
- 5、EmployeeMapper.xml文件增加oracle相關(guān)的sql,以databaseId區(qū)分
1、databaseIdProvider:支持多數(shù)據(jù)庫廠商的語句
type=“DB_VENDOR”,
VendorDatabaseIdProvider作用就是得到數(shù)據(jù)庫廠商的標(biāo)識(shí)(驅(qū)動(dòng)),mybatis就能根據(jù)數(shù)據(jù)庫廠商標(biāo)識(shí)來執(zhí)行不同的sql;MySQL,Oracle,SQL Server,xxx
2、增加oracle 的驅(qū)動(dòng)配置文件pom.xml
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.mi</groupId><artifactId>mybatis</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.2</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.6</version></dependency><dependency><groupId>com.oracle</groupId><artifactId>ojdbc6</artifactId><version>11.2.0.4.0-atlassian-hosted</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>RELEASE</version><scope>test</scope></dependency></dependencies> </project>3、主配置文件增加databaseIdProvider配置
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration><!--1、mybatis可以使用properties來引入外部properties配置文件的內(nèi)容resource 引入類路徑下的配置文件,url 引入網(wǎng)絡(luò)路徑或磁盤路徑下的資源--><properties resource="dbconfig.properties"></properties><!--2、settings 包含很多重要的設(shè)置項(xiàng)setting 用來設(shè)置每一個(gè)設(shè)置項(xiàng)name 設(shè)置項(xiàng)名value 設(shè)置項(xiàng)取值--><settings><setting name="mapUnderscoreToCamelCase" value="true"/></settings><!--3、typeAliases:別名處理器,可以為java類型起別名,別名不區(qū)分大小寫typeAlias:為某個(gè)java類型起別名type:指定要起別名的類型全類名;默認(rèn)別名是類名小寫:employeealias:指定新的別名package:為某個(gè)包下的所有類批量起別名name:指定包名(為當(dāng)前包以及下面所有的后代包的每一個(gè)類都起一個(gè)默認(rèn)別名(類名小寫))批量起別名的情況下,類名重復(fù)時(shí),可以使用@Alias注解為某個(gè)類型指定新的別名--><typeAliases><!--<typeAlias type="com.mi.pojo.Employee" alias="emp"/>--><package name="com.mi.pojo"/></typeAliases><!--4、environments:環(huán)境,mybatis可以配置多種環(huán)境,default指定使用某種環(huán)境,可以達(dá)到快讀切換環(huán)境environment:配置一個(gè)具體的環(huán)境信息,必須有兩個(gè)標(biāo)簽,id代表當(dāng)前環(huán)境的唯一標(biāo)識(shí)transactionManager:事務(wù)管理器type:事務(wù)管理器的類型 JDBC| MANAGED 自定義事務(wù)管理器,實(shí)現(xiàn)transactionFactory接口,type指定為全類名dataSource:數(shù)據(jù)源type:UNPOOLED| POOLED | JNDI 自定義數(shù)據(jù)源,實(shí)現(xiàn)DataSourceFactory接口,type指定全類名--><environments default="mysqldev"><environment id="mysqldev"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="${jdbc.driver}"/><property name="url" value="${jdbc.url}"/><property name="username" value="${jdbc.username}"/><property name="password" value="${jdbc.password}"/></dataSource></environment><environment id="orcldev"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="${orcl.driver}"/><property name="url" value="${orcl.url}"/><property name="username" value="${orcl.username}"/><property name="password" value="${orcl.password}"/></dataSource></environment></environments><!--5、databaseIdProvider:支持多數(shù)據(jù)庫廠商的語句type="DB_VENDOR", VendorDatabaseIdProvider 作用就是得到數(shù)據(jù)庫廠商的標(biāo)識(shí)(驅(qū)動(dòng)),mybatis就能根據(jù)數(shù)據(jù)庫廠商標(biāo)識(shí)來執(zhí)行不同的sql;MySQL,Oracle,SQL Server,xxx--><databaseIdProvider type="DB_VENDOR" ><!--為不同數(shù)據(jù)庫廠商起別名--><property name="MySQL" value="mysql"/><property name="Oracle" value="oracle"/><property name="SQL Server" value="sqlserver"/></databaseIdProvider><mappers><mapper resource="mapper/EmployeeMapper.xml"/></mappers> </configuration>4、外部引用配置增加oracle的配置
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/mybatis jdbc.username=root jdbc.password=rootorcl.driver=oracle.jdbc.driver.OracleDriver orcl.url=jdbc:oracle:thin:@localhost:1521:orcl orcl.username=scott orcl.password=tiger5、EmployeeMapper.xml文件增加oracle相關(guān)的sql,以databaseId區(qū)分
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!--指定為接口的全類名--> <mapper namespace="com.mi.dao.EmployeeMapper"><!--id 為接口的方法名--><select id="getEmployeeById" resultType="employee" databaseId="mysql">select * from employee where id = #{id}</select><select id="getEmployeeById" resultType="employee" databaseId="oracle">select EMPNO id,ENAME lastName from emp where empno = #{id}</select> </mapper> 與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的6、mybatis主配置文件之databaseIdProvider的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 5、mybatis主配置文件之envir
- 下一篇: 2、Docker 常用操作命令