# 配置之屬性優化 ###### tags: `Mybatis-配置解析` ## 配置解析 ### 1.核心配置文件 * mybatis-config.xml * MyBatis 的配置文件包含了會深深影響 MyBatis 行為的設置和屬性信息。 ![](https://i.imgur.com/hk94ahd.png) ### 2.環境配置(environments MyBatis 可以配置成適應多種環境, **不過要記住:盡管可以配置多個環境,但每個 SqlSessionFactory 實例只能選擇一種環境。** ![](https://i.imgur.com/0mr92ce.png) * 學會使用配置多套運行環境 ```xml= <environments default="development"> <environment id="development"> <!--transactionManager事務管理--> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=true&amp;useUnicode=true&amp;characterEncoding=UTF-8"/> <property name="username" value="root"/> <property name="password" value="123456"/> </dataSource> </environment> <environment id="test"> <!--transactionManager事務管理--> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=true&amp;useUnicode=true&amp;characterEncoding=UTF-8"/> <property name="username" value="root"/> <property name="password" value="123456"/> </dataSource> </environment> </environments> ``` 透過default來修改使用的環境 ```xml= <environments default="test"> ``` * Mybatis默認的事務管理是JDB,連接持:POOLED ![](https://i.imgur.com/GIMumZU.png) ### 3.屬性(properties) 我們可以透過properties屬性來實現引用配置文件 這些屬性可以在外部進行配置,並可以進行動態替換。你既可以在典型的 Java 屬性文件中配置這些屬性,也可以在 properties 元素的子元素中設置。【db.properties】 1.編寫一個配置文件 ```properties= driver=com.mysql.cj.jdbc.Driver url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=UTF-8 user=root password=123456 ``` 2.在核心配置文件中引入 **注意:xml中,所有標籤都有規定順序** ![](https://i.imgur.com/qJhpKoM.png) ```xml= <!--引入外部配置文件--> <properties resource="db.properties"/> ``` * 可以直接引入外部文件 * 可以在其中增加一些屬性配置 ```xml= <properties resource="org/mybatis/example/config.properties"> <property name="username" value="dev_user"/> <property name="password" value="F2Fa3!33TYyg"/> </properties> ``` * 如果兩個文件有同一個字段,優先使用外部配置文件