在使用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使用最广泛。

在Spring中配置LocalSessionFactoryBean时,有三种方式加载Hibernate的映射文件hbm.xml。mappingResources用于指定类路径下具体文件,支持列出多个;mappingLocations则允许指定任意路径,包括classpath或file前缀,支持通配符;mappingDirectoryLocations则用于指定类路径下的某个目录,加载该目录下的所有.hbm.xml文件。这三种方式各有应用场景,其中mappingDirectoryLocations最为常用。

9604

被折叠的 条评论
为什么被折叠?



