Mybatis總結(2)-Mybatis的原理及搭建
阿新 • • 發佈:2018-12-01
-
在Mybatis搭建前,應該先了解其執行基本原理
1. 讀取Mybatis的配置檔案-Mybatis-config.xml
2. 由配置檔案的mapper來載入對映檔案mapper.xml
3. 構造一個SqlSessionFactory工廠
4. 用工廠來例項化一個SqlSession的物件,類似於BeanFactory
5. Executor執行器(沒有在程式碼中找到,先存疑)
6. MapperStatement物件(對映器):將你要宣告對映的物件(pojo,map,list,String,Integer等基本型別)注入
7. MapperStatement在從資料庫中獲取對映資料然後輸出對映 -
我們的搭建思路也是根據基本原理來搭建的
1.配置檔案:
log4j.properies
# Global logging configuration log4j.rootLogger=ERROR, stdout # MyBatis logging configuration... log4j.logger.com.itheima=DEBUG # Console output... log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
db.properties``` jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/mybatis jdbc.username=root jdbc.password=123456 jdbc.maxTotal=30 jdbc.maxIdle=10 jdbc.initailSize=5 ```
-
搭建的Mybatis-config.xml,負責連線資料庫和獲取mapper配置
<?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"></properties> <typeAliases> <package name="com.mybatis.po"/> </typeAliases> <!-- 1.配置環境,預設環境id為mysql --> <environments default="mysql"> <!-- 1.2配置id為mysql的資料庫環境 --> <environment id="mysql"> <!-- 使用JDBC事務管理 --> <transactionManager type="JDBC"/> <!-- 資料庫連線池 --> <dataSource type="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 resource="com/mybatis/mapper/PersonMapper.xml"/> <mapper resource="com/mybatis/mapper/IdCardMapper.xml"/> </mappers> </configuration>
- 持久化層負責對資料持久化,對映資料庫,編寫持久化層po
- 編寫對映檔案mapper負責對持久化層資料的對映操作
- 由SqlSessionFactory來例項化物件進行操作(小技巧:封裝SqlSessionFactory成util工具類來簡化開發)