mybatis詳解(三)sqlMapperConfig配置詳解
properties --- 用於提供一系列的鍵值對組成的屬性資訊,該屬性資訊可以用於整個配置檔案中。
settings --- 用於設定 MyBatis 的執行時方式,比如是否啟用延遲載入等。
typeAliases --- 為 Java 型別指定別名,可以在 XML 檔案中用別名取代 Java 類的全限定名。
<!--別名設定--><typeAliases><!--單個別名--><typeAlias type="cn.hd.pojo.User" alias="user"></typeAlias><!--多個別名/包名 別名不區分大小寫 決定著mapper.xml檔案中的資料型別可以直接使用簡短的名字 |
<!--查詢--><select id="findUserById" parameterType="Integer" resultType="User" >SELECT * FROM mbs WHERE id = #{id}</select> |
typeHandlers --- 在 MyBatis 通過 PreparedStatement 為佔位符設定值,或者從 ResultSet 取出值時,特定型別的型別處理器會被執行。(將資料庫中的資料型別和
objectFactory --- MyBatis 通過 ObjectFactory 來建立結果物件。可以通過繼承 DefaultObjectFactory 來實現自己的 ObjectFactory 類。
plugins --- 用於配置一系列攔截器,用於攔截對映 SQL 語句的執行。可以通過實現 Interceptor 介面來實現自己的攔截器。
environments --- 用於配置資料來源資訊,包括連線池、事務屬性等。
mappers --- 程式中所有用到的 SQL 對映檔案都在這裡列出,這些對映 SQL 都被 MyBatis 管理。(載入所有的對映檔案,載入方式有四種)
<mappers><mapper resource="cn/hd/sqlMapperConfig/UserMapper.xml"></mapper></mappers> |
<mapper namespace="cn.hd.mapper.UserMapper"> 通過介面讀取配置,注意:介面的名字必須和配置檔案保持一致,介面名字和對映檔案保持在同一目錄下 |
<mappers><!--<mapper resource="cn/hd/sqlMapperConfig/UserMapper.xml"></mapper>--><package name="cn/hd/sqlMapperConfig></package></mappers> 讀取的是介面的包名,因此要求所有的介面和對應的配置檔案都要保持一致(名字和位置) |
Url基本不用 通過絕對路徑來讀取 |
總結:建議使用第三種,介面和配置檔案同名且在同一包下