位置:首頁 > Java技術 > MyBatis教學 > 從XML創建SqlSessionFactory實例

從XML創建SqlSessionFactory實例

所有的MyBatis 應用都以SqlSessionFactory 實例為中心。SqlSessionFactory 實例通過SqlSessionFactoryBuilder 來獲得,SqlSessionFactoryBuilder 能夠從XML 配置文件或者通過自定義編寫的配置類(Configuration class),來創建一個SqlSessionFactory 實例。
從XML 中創建SqlSessionFactory 實例
從XML 中創建SqlSessionFactory 實例非常簡單。建議您使用類資源路徑(classpath
resource)來加載配置文件,但是您也能夠使用任何方式,包括文本文件路徑或者以file:// 開頭URL 的方式。MyBatis 包括一個叫做Resources 的工具類(utility class),其中包含了一係列方法,使之能簡單地從classpath 或其它地方加載配置文件。
 
String resource = "org/mybatis/example/Configuration.xml";
Reader reader = Resources.getResourceAsReader(resource);
sqlMapper = new SqlSessionFactoryBuilder().build(reader);
 
XML 配置文件包含MyBatis 框架的核心設置,包括獲取數據庫連接的DataSource 實例,和包括決定事務作用域範圍和控製的事務管理等。您將能夠在後麵的章節中找到詳細的XML 配置,在這裡我們先展示一個簡單的例子:
 
<?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>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<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 resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>
 
雖然XML 配置文件中還有很多其它的配置細節,但是,上麵的示例顯示了最重要的部分。注意XML 配置文件的頭部,會使用DTD 驗證文檔來驗證該XML 配置文件。body 部分的environment元素,包含了事務管理和連接池配置。Mappers 元素指定了映射配置文件--包含SQL 語句和映射定義的XML文件。