zoukankan      html  css  js  c++  java
  • JAVA MyBatis配置文件用properties引入外部配置文件

    方式一:通过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此文件换行时,不能有空格!!!

  • 相关阅读:
    LeetCode 88. Merge Sorted Array
    LeetCode 75. Sort Colors
    LeetCode 581. Shortest Unsorted Continuous Subarray
    LeetCode 20. Valid Parentheses
    LeetCode 53. Maximum Subarray
    LeetCode 461. Hamming Distance
    LeetCode 448. Find All Numbers Disappeared in an Array
    LeetCode 976. Largest Perimeter Triangle
    LeetCode 1295. Find Numbers with Even Number of Digits
    如何自学并且系统学习计算机网络?(知乎问答)
  • 原文地址:https://www.cnblogs.com/chenyanbin/p/11655095.html
Copyright © 2011-2022 走看看