Spring的LocalSessionFactoryBean类
在与Hibernate集成时我们需要用到Spring的LocalSessionFactoryBean类,这个类可以看作是连接Spring与Hibern ate的桥梁。
一.首先我们在Spring配置如下的两个bean:
<o:p></o:p>
xml 代码
<!-- 实现spring与hibernate的集成 -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:hibernate.cfg.xml</value>
</property>
<property name="dataSource">
<ref bean="dataSource"/>
</property>
</bean>
<!-- 配置基本数据源 -->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/test</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>111111</value>
</property>
</bean>
二.使用HibernateDaoSupport或者HibernateTemplate操作数据库<o:p></o:p>
使用Spring提供的这两个类就可以很容易的操作数据库了。我们在Spring中配置一个HibernateTemplate的实例bean:<o:p></o:p>
<o:p></o:p>
xml 代码
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>
将hibernateTemplate装配到我们的service中后就可以直接利用hibernateTemplate来操纵数据库了。不过平常使用较多的都是Hibernate的Dao支撑类,Spring采用的是模板—回调设计模式,能够让我们专注于特定方法的实现。上面两个bean为我们提供了很多信息dataSource为我们提供了数据连接的相关信息,至于LocalSessionFactoryBean,它里面提供的很多信息都是与Hibernate配置文件中的内容对应的,有些信息我们可以通过LocalSessionFactoryBean设置也可以通过配置文件来进行设置。比方说,我们可以通过设置LocalSessionFactoryBean的mappingResources属性来指定Hibernate映射文件,也可以在hibernate.cfg.xml中利用mapping元素的resource属性来指定映射文件,它们的效果是相同的。还有hibernateProperties属性对应于配置文件中的property元素等等。<o:p></o:p>
分享到:
相关推荐
这个问题通常发生在尝试通过Spring管理Hibernate SessionFactory的创建时,而Spring无法找到对应的类实现。 #### 二、核心概念 1. **Spring ORM**:Spring框架提供了一组ORM(Object-Relational Mapping)支持服务...
在Spring中,通常通过`LocalSessionFactoryBean`配置SessionFactory,并使用`HibernateTemplate`或`HibernateDaoSupport`简化数据库操作。 4. **整合步骤** - 配置`web.xml`,添加Struts和Spring的初始化参数和...
在Spring中,我们通常使用`LocalSessionFactoryBean`来创建Hibernate的SessionFactory,并通过`HibernateTemplate`或`SessionFactory`接口进行数据访问操作。`SessionFactory`是一个线程安全的工厂,用于创建`...
实体类通过注解或XML文件定义映射规则,Spring通过`EntityScanner`扫描这些映射,确保它们在运行时被正确加载。 7. **懒加载和级联操作**: Hibernate支持对象关系的懒加载,通过`lazy="true"`可以延迟加载关联数据...
Spring Framework 4 与 Hibernate 4 的...通过上述整合,开发者可以利用Spring的高级特性,如声明式事务管理,同时享受到Hibernate提供的简单、高效的数据库操作。这种结合大大提高了开发效率,降低了系统的复杂性。
4. **SessionFactory 创建**:使用 Spring 的 LocalSessionFactoryBean 创建 Hibernate 的 SessionFactory。配置文件中需要包含实体类的扫描路径、数据库连接信息、Hibernate 配置属性等。 5. **DAO 层集成**:在 ...
解压后,可以通过IDE导入项目,查看其配置文件、实体类、映射文件以及测试用例,学习和理解Spring与Hibernate的整合过程。这种集成有助于提升开发效率,降低系统的复杂性,同时也为应用程序的扩展和维护提供了便利。...
这个项目可能是为了演示如何在一个简单的添加删除操作中使用这些技术,通过整合Spring、Hibernate、Spring MVC和Ajax,实现一个高效、用户友好的后台管理系统。开发者可以通过学习这个示例,掌握如何在实际项目中...
- 整合Spring和Hibernate的主要目的是利用Spring的管理能力,让Hibernate的DAO(数据访问对象)和SessionFactory可以通过Spring的IoC(控制反转)容器进行管理和注入,提高代码的可测试性和可维护性。 3. **整合...
在Java企业级开发中,Spring和Hibernate是两个非常重要的框架,Spring主要负责依赖注入和管理,而Hibernate则专注于对象关系映射(ORM)和数据库操作。本教程将详细介绍如何将两者结合,通过全XML配置方式进行集成,...
Spring通过`LocalSessionFactoryBean`类实现了对Hibernate的驱动,使得开发者能够更加灵活和方便地管理数据持久化操作。`LocalSessionFactoryBean`是一个工厂Bean,它负责创建并配置Hibernate的`SessionFactory`。 ...
<bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> <!-- other configurations --> <prop key="hibernate.cache.use_second_level_cache">true <prop key="...
在整合Spring时,我们需要创建一个Hibernate配置文件(如hibernate.cfg.xml),配置数据库连接信息,然后通过Spring的LocalSessionFactoryBean来创建SessionFactory。同时,Spring的HibernateTemplate或...
将Spring与Struts以及Hibernate相结合,不仅能够充分发挥各个框架的优势,还能够通过Spring的统一管理进一步提升系统的整体性能和稳定性。无论是对于大型企业级应用还是中小型项目,这样的集成都是极具价值的。
总结来说,Spring 与 Hibernate 的整合主要涉及 SessionFactory 的配置、DAO 类的实现以及事务管理。通过 Spring 的 IoC 容器管理数据访问资源,可以使应用更加解耦,同时利用 Spring 的事务管理功能,可以简化事务...
然后,Spring可以通过`LocalSessionFactoryBean`来创建SessionFactory。 在数据库层面,SQL Server 2008是一个关系型数据库管理系统,它提供了强大的数据存储和处理能力。在Spring+Hibernate整合中,SQL Server ...
1. **SessionFactory的创建**:Spring管理SessionFactory,通常在ApplicationContext.xml中配置,通过`<bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">`指定数据源...
在Spring的配置文件(如`applicationContext.xml`)中,我们需要定义`LocalSessionFactoryBean`,指定Hibernate的配置文件和实体类的路径。 ```xml <bean id="sessionFactory" class="org.springframework.orm....
使用Spring管理SessionFactory,通过`LocalSessionFactoryBean`配置。 5. **整合步骤**:在Struts2的Action类中,通过@Autowired注入Service,Service再通过SessionFactory操作数据库。Struts2的拦截器可以与Spring...
1. **管理Hibernate SessionFactory**:Spring可以通过配置文件来创建和管理`SessionFactory`实例。 2. **事务管理**:Spring提供了一套完整的事务管理机制,可以方便地与Hibernate结合使用。 3. **异常转换**:...