MyBatis學習(三)--使用日誌和優化配置檔案
阿新 • • 發佈:2018-11-17
寫在前面
大體結構還是參照大大的部落格,但是自己會嘗試補充一些內容
孤傲蒼狼的部落格:https://www.cnblogs.com/xdp-gacl/category/655890.html
程式碼中會有很多重要的註釋,請不要忽略。
一、使用日誌
為了後面方便和debug這裡就要把mybatis的日誌搬出來了,mybatis支援很多日誌系統,這裡使用LOG4J。
- 在
config.xml
中新增<settings>
標籤,設定logImpl
屬性為LOG4J
注:新增時請注意標籤的順序,按照入門篇中提到的文件結構寫。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<!-- 設定日誌系統為LOG4J -->
<setting name="logImpl" value="LOG4J"></setting>
</settings>
<!-- 設定別名 -->
<typeAliases >
<typeAlias alias="UserBean" type="com.project.bean.UserBean" />
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED"> <!-- 使用pooled連線池 -->
<!--資料庫連線配置 -->
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/mybatis" />
<property name="username" value="root" />
<property name="password" value="123456" />
</dataSource>
</environment>
</environments>
<mappers>
<!-- mapper.xml路徑 -->
<mapper resource="com/project/xml/UserMapper.xml" />
</mappers>
</configuration>
- 匯入Log4J的jar包
暫時不提供下載連結,以後可能補上。大家可以百度,或者去官網下載。
- 在src目錄下新增
log4j.properties
log4j.rootLogger=DEBUG,Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
# log4j.logger.包.類 =level
log4j.logger.org.apache=INFO
4.執行語句,輸出如下:
二、優化資料庫連線配置
在上邊寫config.xml
時,有沒有隱隱約約感覺以後會越寫越多,各種設定、別名、註冊mapper
這時候再去改資料庫的連線配置很容易碰到檔案的其他內容,所以我們把資料庫的連線配置獨立出來。
- 新建一個properties檔案
鍵值對的形式,內容如下:
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis
username=root
password=123456
- 在
config.xml
中設定<properties>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 引入資料庫配置檔案 -->
<properties resource="db.properties">
<!--也可以直接為屬性設定其他值-->
<!--<property name="username" value="dev_user"/>-->
</properties>
<settings>
<!-- 設定日誌 -->
<setting name="logImpl" value="LOG4J"></setting>
</settings>
<!-- 設定別名 -->
<typeAliases>
<typeAlias alias="UserBean" type="com.project.bean.UserBean" />
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED"> <!-- 使用pooled連線池 -->
<!--資料庫連線配置
使用${}的格式引入db.properties中的屬性,名字要一樣
-->
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</dataSource>
</environment>
</environments>
<mappers>
<!-- mapper.xml路徑 -->
<mapper resource="com/project/xml/UserMapper.xml" />
</mappers>
</configuration>