1. 程式人生 > >LocalSessionFactoryBean載入Hibernate 對映檔案(hbm.xml)的三種方式及區別

LocalSessionFactoryBean載入Hibernate 對映檔案(hbm.xml)的三種方式及區別

在使用spring時需要給LocalSessionFactoryBean類注入hbm.xml檔案。LocalSessionFactoryBean類有好幾個屬性用來注入hibernate對映檔案:

mappingResources、mappingLocations、mappingDirectoryLocations

他們的區別:
mappingResources:指定classpath下具體對映檔名
Java程式碼

<property name="mappingResources" value=“Person.hbm.xml”/>  

或者利用list同時指定多個 對映檔案
Xml程式碼

<property name="mappingResources">  
            <list>  
                <value>domain/Tusers.hbm.xml</value>  
                <value>domain/Book.hbm.xml</value> 
            </list>  
</property>  

mappingLocations:可以指定任何檔案路徑,並且可以指定字首:classpath、file等
Xml程式碼

<property name="mappingLocations" value="/WEB-INF/Person.hbm.xml"/>  

也可以用萬用字元指定,’*‘指定一個檔案(路徑)名,’**’指定多個檔案(路徑)名,例如:
Xml程式碼

<property name="mappingLocations" value="classpath:com/example/**/*.hbm.xml"/>  

上面的配置是在com/example包下任何路徑下的所有hbm.xml檔案都被載入

對映檔案mappingDirectoryLocations:指定對映的檔案路徑
Xml程式碼

<property name="mappingDirectoryLocations">  
      <list>  
        <value>classpath:domain</value>  
      </list>  
</property>  

載入類路徑下domain包下的所有.hbm.xml。其中mappingDirectoryLocations使用最廣泛。