通过注解注入方式
1. 在applicationContext.xml定义
<!-- 启动注解 -->
<context:component-scan base-package="com.service.impl"/>
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
在service中定义变量
private HibernateTemplate hibernateTemplate;
给出setter方法注解
@Resource(name="hibernateTemplate")
public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
this.hibernateTemplate = hibernateTemplate;
}
通过配置注入方式
在需要HibernateTemplate属性的类,加入
<property name="hibernateTemplate" ref="hibernateTemplate"></property>
就可以直接使用HibernateTemplate了
分享到:
相关推荐
在Spring环境中,通常会使用`SessionFactory`作为Bean注入到`HibernateTemplate`中,以确保每次请求都能获得一个新的`Session`。 #### 五、Spring环境下的配置示例 以下是一个典型的Spring配置文件示例,展示了...
在HibernateTemplate中,这一模式得到了充分的应用,具体体现在其通过定义一个通用的操作流程,并将具体的数据库操作细节留给实现类去完成,从而达到了良好的代码复用性和扩展性。 #### 三、核心概念解析 ##### ...
Spring的核心之一是依赖注入,它允许对象在运行时通过容器获得所需的依赖,而不是在代码中硬编码这些依赖。这增强了代码的可测试性和可维护性,因为对象之间的关系可以在不修改代码的情况下更改。 **面向切面编程...
它只要获得SessionFactory的引用,就可以智能地打开Session,并在持久化访问结束后关闭Session,程序开发只需完成持久层逻辑,通用的操作则由HibernateTemplate完成。 24.3 Spring对Hibernate的简化 24.3.2 简化的...
Hibernate查询语言(HQL)是一种面向对象的查询语言,...而在特定场景下,直接使用JDBC API可能会获得更好的性能表现。无论如何,无论使用哪种方法,都应当考虑到操作的性能和内存占用等因素,确保程序的高效稳定运行。
这里首先获取SessionFactory,然后调用`getCurrentSession()`得到当前的Session实例,再通过`get()`方法获取对象。 3. 使用`HibernateTemplate`的`find()`方法执行HQL查询: - 查询所有`SellerAppInfo`对象: ``...
在Spring中,`HibernateTemplate`是Spring对Hibernate ORM框架的一个封装,用于简化Hibernate的操作。它提供了一组方便的方法来执行常见的数据库操作,比如查询、更新、保存和删除对象。使用`HibernateTemplate`可以...
`getAllRowCount`方法则直接使用`find`方法获取HQL查询的列表大小,从而得到总记录数。 这个实现巧妙地利用了Spring对Hibernate的支持,避免了直接在DAO层写过多的事务控制代码,提高了代码的可维护性和可测试性。 ...
在DAO层的实现类`MemberDaoImpl`中,`queryForPage`方法利用`HibernateTemplate`的`executeFind`方法,通过传入一个`HibernateCallback`的匿名内部类来执行HQL,并设置分页参数`setFirstResult`和`setMaxResults`。...
当然还要获得域对象的Class实例,这就要在构造方法中传入Class实例。用spring提供的HibernateTemplate注入到GenericHibernateDao中,这样在各个实现类就可以直接调用HibernateTemplate来实现额外的查询操作了。 ...
- 使用Hibernate提供的`HibernateTemplate`来执行数据库操作,包括获取总记录数和设置分页参数。 - 根据计算出的起始位置和每页记录数执行查询,获取分页后的数据列表,并将其封装到`PageSupport`对象中返回。 ####...
通过继承`HibernateDaoSupport`,开发者可以轻松地获得SessionFactory的引用,而无需手动管理Session和Transaction。`HibernateDaoSupport`的核心方法包括: 1. `setSessionFactory(SessionFactory sessionFactory)...
当使用这个抽象类时,子类可以通过调用`getHibernateTemplate()`方法获得`HibernateTemplate`实例,进而执行数据库操作。 **示例代码**: ```java public class UserDaoHibernateImpl extends HibernateDaoSupport ...
在DAO实现中,可以继承`HibernateDaoSupport`,并通过`setSessionFactory`方法注入`SessionFactory`,以获得对`HibernateTemplate`的访问,从而执行HQL查询和CRUD操作。 8. **数据访问异常处理**: `getSession()`...
通过继承这个类,开发者可以获得SessionFactory实例,并能够轻松地在DAO实现中调用Hibernate的相关方法。 总的来说,Spring整合Hibernate提供了一套完整的解决方案,使得开发人员可以专注于业务逻辑,而不必过多...
即使页面显示错误,但只要UserService中的数据修改部分被@Transactional注解覆盖,那么相关的数据库操作就会在事务管理下完成,这通常意味着数据的完整性和一致性得到了保证。 总之,Struts2、Spring和Hibernate的...
Struts2的Action类作为控制器,会接收到用户的请求,如请求的页码,然后调用Service层的方法,得到`PageBean`,最后将`PageBean`传递给视图层进行渲染。 6. **视图层**(View Layer): 视图层通常是JSP页面,它...
- **使用HibernateTemplate**:Spring框架的HibernateTemplate简化了DAO(Data Access Object)层的操作,提供了事务管理。 4. **CRUD操作**: - **Create**:在Action中创建一个新的实体对象,调用Session的save...
工厂模式用于通过工厂创建bean,单例模式保证了Spring中bean的默认单例特性,代理模式用于实现AOP,模板方法模式如jdbcTemplate和hibernateTemplate用于数据库操作,包装器模式用于需要连接多个数据库的情况,观察者...