Spring加载Hibernate 映射的几种方式及区别
LocalSessionFactoryBean有好几个属性用来查找hibernate映射文件:
mappingResources、mappingLocations、mappingDirectoryLocations与mappingJarLocations
1.mappingResources:指定classpath下具体映射文件名 eg: xml代码 <property name="mappingResources" value=“userTest.hbm.xml”/>
或者利用list同时指定多个 映射文件
<property name="mappingResources">
<list>
<value>cn/com/env/DAO/tickets/Tusers.hbm.xml</value>
<value>cn/com/env/DAO/tickets/Tprojectneed.hbm.xml</value>
</list>
</property>
2.mappingLocations:可以指定任何文件路径,并且可以指定前缀:classpath、file等eg: xml代码
<property name="mappingLocations" value="/WEB-INF/usetTest.hbm.xml"/>
<property name="mappingLocations" value="classpath:com/myproject/tickets/userTest.hbm.xml"/>
也可以用通配符指定,'*'指定一个文件(路径)名,'**'指定多个文件(路径)名
eg: xml代码<property name="mappingLocations" value="classpath:com/myproject/domain*.hbm.xml"/>
3.mappingDirectoryLocations:指定映射的文件路径
eg: xml代码
<property name="mappingDirectoryLocations">
<list>
<value>/WEB-INF/classes/com/tickets/model/survey</value>
</list>
</property>
4.mappingJarLocations:指定加载的映射文件在jar文件