方式一:通過properties 元素的子元素來傳遞數據
例如:
1 <properties> 2 <property name="driver" value="com.mysql.jdbc.Driver" /> <!-- 驅動類型 --> 3 <property name="url" value="jdbc:mysql://localhost:3306/sam" /> <!-- 連接字符串 --> 4 <property name="username" value="root" /> <!-- 用戶名 --> 5 <property name="password" value="root" /> <!-- 密碼 --> 6 </properties>
然后其中的屬性就可以在整個配置文件中被用來替換需要動態配置的屬性值。比如:
1 <dataSource type="POOLED"> 2 <property name="driver" value="${driver}" /> <!-- 驅動類型 --> 3 <property name="url" value="${url}" /> <!-- 連接字符串 --> 4 <property name="username" value="${username}" /> <!-- 用戶名 --> 5 <property name="password" value="${password}" /> <!-- 密碼 --> 6 </dataSource>
這個例子中的 driver、url、username、password 將會由 properties 元素中的子元素設置的相應值來替換。
注:dataSource元素下的property的屬性value值,需與properties元素下的property的屬性name一一對應。
完整配置文件:myBatis-config.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE configuration 3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 4 "http://mybatis.org/dtd/mybatis-3-config.dtd"> 5 <configuration> 6 <properties> 7 <property name="driver" value="com.mysql.jdbc.Driver" /> <!-- 驅動類型 --> 8 <property name="url" value="jdbc:mysql://localhost:3306/sam" /> <!-- 連接字符串 --> 9 <property name="username" value="root" /> <!-- 用戶名 --> 10 <property name="password" value="root" /> <!-- 密碼 --> 11 </properties> 12 <environments default="development"> 13 <environment id="development"> 14 <transactionManager type="JDBC" /> 15 <dataSource type="POOLED"> 16 <property name="driver" value="${driver}" /> <!-- 驅動類型 --> 17 <property name="url" value="${url}" /> <!-- 連接字符串 --> 18 <property name="username" value="${username}" /> <!-- 用戶名 --> 19 <property name="password" value="${password}" /> <!-- 密碼 --> 20 </dataSource> 21 </environment> 22 </environments> 23 <mappers> 24 <mapper resource="DeptMapper.xml" /> <!-- 映射SQL語句的XML文件 --> 25 </mappers> 26 </configuration>
方式二、通過properties的resource屬性來引入外部properties配置文件的內容
完整配置文件:myBatis-config.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE configuration 3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 4 "http://mybatis.org/dtd/mybatis-3-config.dtd"> 5 <configuration> 6 <!-- 引入外部配置文件 --> 7 <properties resource="dbconfig.properties"> 8 </properties> 9 <environments default="development"> 10 <environment id="development"> 11 <transactionManager type="JDBC" /> 12 <dataSource type="POOLED"> 13 <property name="driver" value="${driver}" /> <!-- 驅動類型 --> 14 <property name="url" value="${url}" /> <!-- 連接字符串 --> 15 <property name="username" value="${username}" /> <!-- 用戶名 --> 16 <property name="password" value="${password}" /> <!-- 密碼 --> 17 </dataSource> 18 </environment> 19 </environments> 20 <mappers> 21 <mapper resource="DeptMapper.xml" /> <!-- 映射SQL語句的XML文件 --> 22 </mappers> 23 </configuration>
完整配置文件:dbconfig.properties
1 driver=com.mysql.jdbc.Driver 2 url=jdbc:mysql://localhost:3306/sam 3 username=root 4 password=root
注:dbconfig.properties此文件換行時,不能有空格!!!