在基本的 mybatis 中,session 工廠可以使用 sqlsessionfactorybuilder 來建立。而在 mybatis-spring 中,則使用 sqlsessionfactorybean 來替代。
id="sqlsessionfactory"
class="org.mybatis.spring.sqlsessionfactorybean">
name="datasource"
ref="datasource"/>
array>
property>
name="typealiasespackage"
value="com.isea533.mybatis.model"/>
name="plugins">
class="com.github.pagehelper.pagehelper">
name="properties">
dialect=hsqldb
reasonable=true
value>
property>
bean>
name="properties">
identity=mysql
notempty=true
value>
property>
bean>
array>
property>
bean>
該屬性必須配置,多資料來源時會有多個datasource
,同時也需要配置多個sqlsessionfactory
來對應。配置該屬性後,sqlsessionfactory
會自動掃瞄該路徑下的所有檔案並解析。該路徑支援多個,可以用,;\t\n
進行分割。每乙個路徑都可以用直接的包路徑,或者ant風格的表示式。上面例子中並沒有使用該屬性,當sqlsessionfactorybean
提供的配置不能滿足使用時,你可以使用mybatis-config.xml
配置檔案配置其他屬性,然後通過configlocation
屬性指定該配置的路徑,sqlsessionfactorybean
會使用該配置檔案建立configuration
。
該屬性可以給包中的類註冊別名,註冊後可以直接使用類名,而不用使用全限定的類名(就是不用包含包名)。
該屬性可以配置多個,可以用,;\t\n
進行分割。但是不支援ant風格的路徑。
該屬性可以配置mybatis的***,***的配置順序會影響***的執行順序。
從上往下的***,實際的執行順序是這樣,第乙個***會最後執行,最後乙個會首先執行。
然後出***的順序和配置的順序一致,第乙個最先返回,最後乙個最後返回。
就以上面的配置為例,乙個簡單的執行順序圖如下:
這些***執行的順序都是環繞型,不要簡單理解為簡單的順序執行。
從配置順序來看,第乙個配置的在最裡面,後面的依次環繞上乙個***。
name="basepackage"
name="annotationclass"
value="***"/>
name="sqlsessionfactorybeanname"
ref="sqlsessionfactory"/>
bean>
一般用過的最多也就是這3個屬性,實際情況下最常用的只有basepackage
。basepackage
可以寫多個,可以用,;\t\n
進行分割。每乙個路徑都可以用直接的包路徑,或者ant風格的表示式。該屬性實際上就是起到乙個過濾的作用,如果設定了該屬性,那麼mybatis的介面只有包含該註解,才會被掃瞄進去。這個屬性一般都用不到,只有當你配置多資料來源的時候,這是會有多個sqlsessionfactory
,你就需要通過該屬性來指定哪乙個sqlsessionfactory
(值為sqlsessionfactorybean
配置中的id
屬性)。
url請求/project/dir/file.jsp
,現在存在兩個路徑匹配模式/**/*.jsp和/project/dir/*.jsp
,那麼會根據模式/project/dir/*.jsp
來匹配
MyBatis Spring配置簡單了解
在基本的 mybatis 中,session 工廠可以使用 sqlsessionfactorybuilder 來建立。而在 mybatis spring 中,則使用 sqlsessionfactorybean 來替代。dialect hsqldb reasonable true identity m...
MyBatis Spring配置簡單了解
在基本的 mybatis 中,session 工廠可以使用 sqlsessionfactorybuilder 來建立。而在 mybatis spring 中,則使用 sqlsessionfactorybean 來替代。例項 該屬性必須配置,多資料來源時會有多個datasource,同時也需要配置多個...
Mybatis Spring配置流程
mybatis是乙個開源的持久層框架,底層使用jdbc實現,為了簡化jdbc操作,只需要只需要規劃ql語句,以及設計並實現介面。public class tests public void setid integer id public string getusername public void ...