spring加载hibernate映射文件的几种方式

 我来答
猴猜止2
2013-08-25 · TA获得超过181个赞
知道答主
回答量:121
采纳率:75%
帮助的人:54.7万
展开全部
在Spring的applicationContext.xml中配置映射文件,通常是在<sessionFactory这个Bean实例中进行的,若配置的映射文件较少时,可以用sessionFactory的所属类LocalSessionFactoryBean的“mappingResources”属性,方式包括(mappingResources,mappingLocations、mappingDirectoryLocations与mappingJarLocations )定义方法如下:第一种:<property name=mappingResources<list<valuecom/w3cs/vlar/hibernate/Person.hbm.xml</value <valuecom/w3cs/vlar/hibernate/Car.hbm.xml</value <valuecom/w3cs/vlar/hibernate/Engine.hbm.xml</value <valuecom/w3cs/vlar/hibernate/Toy.hbm.xml</value</list</property 当配置文件变得越来越多,阅读和修改起来也越来越麻烦,而且基于XML的配置也可能带来输入的错误,导致你可能因为一个字符的错误而浪费半天时间去寻找错误。 第二种:在这种情况下,可以使用LocalSessionFactoryBean的“mappingDirectoryLocations”属性来定义映射文件,只要指出映射文件所在文件夹就可以了,Spring会替你找出该文件夹内所有的映射文件,定义方法如下: <property name=mappingDirectoryLocations<list<valueWEB-INF/mappings</value</list</property第三种:当然,它的属性值也可以通过classpath来指出,这时所指定的是工程的类路径 <property name=mappingDirectoryLocations<list<valueclasspath:/my/package/*.hbm.xml</value</list</property第四种:<!-- 增加了对大对象字段处理配置Begin -- <bean id =oracleLobHandler class =org.springframework.jdbc.support.lob.OracleLobHandler lazy-init =true <property name =nativeJdbcExtractor ref =nativeJdbcExtractor /</bean <bean id =nativeJdbcExtractor class =org.springframework.jdbc.support.nativejdbc.CommonsDbcpNativeJdbcExtractor lazy-init =true/ <!-- 增加了对大对象字段处理配置End -- <!-- 定义Hibernatte框架中需要的SesscionFactory对象//-- <bean id=sessionFactory class=org.springframework.orm.hibernate3.LocalSessionFactoryBean <property name=dataSource ref=dataSource / <!--增加了对大对象字段处理配置Begin -- <property name =lobHandler ref =oracleLobHandler/ <!--增加了对大对象字段处理配置End -- <property name=mappingDirectoryLocations<list <valueclasspath:/my/package/login/dao/pojo/</value <valueclasspath:/my/package/jpf/dao/pojo/</value
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式