在Spring的applicationContext.xml中配置映射文件,通常是在<sessionFactory>这个 Bean实例中进行的,若配置的映射文件较少时,可以用sessionFactory的所属类LocalSessionFactoryBean的 “mappingResources”属性,方式包括(mappingResources,mappingLocations、 mappingDirectoryLocations与mappingJarLocations )定义方法如下:
第一种:
<property name="mappingResources">
<list>
<value>com/w3cs/vlar/hibernate/Person.hbm.xml</value>
<value>com/w3cs/vlar/hibernate/Car.hbm.xml</value>
<value>com/w3cs/vlar/hibernate/Engine.hbm.xml</value>
<value>com/w3cs/vlar/hibernate/Toy.hbm.xml</value>
</list>
</property>
当配置文件变得越来越多,阅读和修改起来也越来越麻烦,而且基于XML的配置也可能带来输入的错误,导致你可能因为一个字符的错误而浪费半天时间去寻找错误。
第二种:
在这种情况下,可以使用LocalSessionFactoryBean的“mappingDirectoryLocations”属性来定义映射文件,只要指出映射文件所在文件夹就可以了,Spring会替你找出该文件夹内所有的映射文件,定义方法如下:
<property name="mappingDirectoryLocations">
<list>
<value>WEB-INF/mappings</value>
</list>
</property>
第三种:
当然,它的属性值也可以通过classpath来指出,这时所指定的是工程的类路径
<property name="mappingDirectoryLocations">
<list>
<value>classpath:/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>
<value>classpath:/my/package/login/dao/pojo/</value>
<value>classpath:/my/package/jpf/dao/pojo/</value>
......
</list>
</property>
相关推荐
3. **事务管理**:Spring提供了一种声明式事务管理方式,通过`@Transactional`注解可以方便地控制事务边界。在配置文件中,需要开启事务管理器并指定对应的SessionFactory。 4. **DAO层集成**:Spring的DaoSupport...
Hibernate3.3引入了HQL(Hibernate Query Language),这是一种面向对象的查询语言,与SQL类似但更接近Java对象的思维方式。 整合这三个框架的第一步通常涉及到以下几个步骤: 1. 配置环境:确保项目中引入了...
在Java的Web开发中,Spring框架与Hibernate的整合是常见的数据访问层实现方式。Spring提供了强大的依赖注入(DI)和AOP(面向切面编程)功能,而Hibernate则是一个优秀的对象关系映射(ORM)框架,它使得Java开发者...
在`Hibernate`与`Spring`的整合中,通常会有一个`hibernate.cfg.xml`配置文件,用来定义数据库连接信息、实体类的映射等。同时,`Spring`的配置文件(如`applicationContext.xml`)中会包含`Hibernate`的相关bean...
Hibernate的延迟加载机制可以分为两种: 1. 实体对象的延迟加载 2. 集合的延迟加载 Hibernate的映射关系 Hibernate可以实现类之间的关系,例如一对多、多对多的关系。这种关系主要体现在表与表之间的关系上,我们...
1. **事务管理**:Spring提供了一种统一的事务管理方式,可以在不同数据源上进行声明式或编程式事务控制,使得事务管理更加简单且健壮。 2. **对象持久化**:通过Spring的Hibernate模板或者JPA抽象层,开发者可以...
Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。结合SSH,Ajax可以实现在文件上传过程中页面的动态更新,用户可以实时看到上传进度或结果,提高了用户体验...
在Hibernate的配置文件或映射文件中,可以设置关联对象的加载策略为延迟加载。比如在给定的部分内容中,`<many-to-one name="dept" class="com.sxy.dao.Dept" fetch="select" lazy="proxy">` 表示了部门(Dept)与...
1. **使用Hibernate SessionFactory**:在Spring配置文件中,定义一个SessionFactory Bean,通过Hibernate的Configuration类加载hibernate.cfg.xml,然后初始化SessionFactory。这样,SessionFactory的创建和管理都...
开题报告和大学答辩通常会涉及以下几个方面:系统背景介绍、需求分析、系统设计(包括架构设计、数据库设计)、关键技术实现(如Struts的拦截器、Spring的AOP、Hibernate的懒加载等)、系统功能模块详细说明、系统...
在结合Spring和Hibernate进行测试时,有几种常见的测试策略: 1. **单元测试**:专注于单一的函数或方法,通常不涉及数据库交互。你可以使用`@DataJpaTest`或`@WebMvcTest`来专注于特定的Spring组件,如JPA或MVC。 ...
在数据库创建语句中,可能包含了创建实体对应的表结构,例如用户表、商品表等,这些表结构应与Hibernate的映射文件(.hbm.xml或使用注解的方式)保持一致。 学习这个项目,初学者可以从以下几个方面入手: 1. **...
为了更好地理解和应用 Struts,我们还需要了解几种常见的数据对象及其用途: - **POJO (Plain Old Java Object)**:简单的 Java 对象,具有 getter 和 setter 方法。它是其他数据对象的基础。 - **PO (Persistent ...
本压缩包"Java.Web开发JSP Servlet Struts Spring Hibernate Ajax.rar"显然包含了几个关键的Java Web开发技术,包括JSP(JavaServer Pages)、Servlet、Struts、Spring、Hibernate以及Ajax。以下是对这些技术的详细...
### Flex、Spring、Hibernate 集成 #### 引言 随着互联网技术的不断发展,**RIA(Rich Internet Application,富互联网应用)**逐渐成为一种重要的技术趋势,它结合了传统桌面应用的优势与Web应用的便利性,为用户...
Spring是一个全面的、模块化的应用框架,而Hibernate则是一个强大的对象关系映射(ORM)工具,两者结合可以构建出高效、灵活的企业级应用程序。 Spring框架主要包含以下几个核心模块: 1. **Spring Core Container...
在这个"springmvc spring hibernate ajax json"的简单完整DEMO中,我们可以预期以下几个方面的集成和使用: 1. **Spring MVC** 作为前端控制器,负责接收HTTP请求,调度到相应的Controller处理。 2. **Spring** 通过...
在Struts配置文件中引入Spring的上下文加载插件,可以实现Struts与Spring的无缝集成。 ```xml <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"> *.xml"/> ``` 这段配置指定了Spring的...