核心提示:1、 继承了HibernateDaoSupport类的类获取session时,已不可用SessionFactory.OpenSessioon的形式来获取Session了,由于HibernateDaoSupport本身已有获取session的方法getSession(),所以直接用Session se=this.getSession();来获取, 2、 在依据hql获取用户
1、 继承了HibernateDaoSupport类的类获取session时,已不可用SessionFactory.OpenSessioon的形式来获取Session了,由于HibernateDaoSupport本身已有获取session的方法getSession(),所以直接用Session se=this.getSession();来获取,
2、 在依据hql获取用户信息时,继承了HibernateDaoSupport类的类中不能在使用Query类了,而是用List list = this.getHibernateTemplate().find(hql);形式来获取实体类集合
Java类篇:
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import entity.Ssh;
public class SshDAO extends HibernateDaoSupport {
// private SessionFactory sf = null;
//
// public SessionFactory getSf() {
// return sf;
// }
//
// public void setSf(SessionFactory sf) {
// this.sf = sf;
// }
// public String print(int id) {
// Session se = sf.openSession();
// String hql = "from Ssh where id=" + id;
// Query q = se.createQuery("hql");
// List list = q.list();
// String a = list.get(1).getName();
// return a;
// }
public String print(int id) {
Session se =this.getSession();//获取Session对象
String hql = "from Ssh where id=" + id;
//依据hql获取实体集合,此处不要用Query类来实现
List list = this.getHibernateTemplate().find(hql);
String a = list.get(0).getName();
return a;
}
public static void main(String[] args) {
ApplicationContext ac=newClassPathXmlApplicationContext
("spring/spring.xml");
SshDAO ssh=(SshDAO)ac.getBean("sshD");
System.out.println(ssh.print(1));
}
}
Spring.xml 文件篇:
在spring中配置继承了HibernateDaoSupport的类时此处的sessionFactory不能自定义! Sf为spring中的SessionFacotry的id
<bean id="sshD" class="dao.SshDAO">
<property name="sessionFactory">
<ref bean="sf" />
</property>
</bean>
注意:此种情况适应于实体Dao类时系统自动生成时
分享到:
相关推荐
### hibernateDaoSupport类的运用实例 #### 一、引言 `hibernateDaoSupport`是Spring框架中提供的一种支持Hibernate操作的基类。它主要用于简化Hibernate与Spring集成过程中的编码工作,使得开发人员能够更加专注于...
HibernateDaoSupport 类的jar HibernateDao 的jar
当Spring与Hibernate结合时,Spring提供了`HibernateDaoSupport`类,它为基于Hibernate的DAO(数据访问对象)提供了一种简单而强大的支持。本文将深入探讨`HibernateDaoSupport`的原理、用法以及它如何简化开发工作...
根据给定的信息,我们可以深入探讨Spring框架中与Hibernate集成的相关知识点,特别关注“HibernateDaoSupport”类及其在Spring环境中的应用。以下是对标题、描述以及部分文件内容的详细解析: ### 一、Spring与...
在实际开发中,结合使用`HibernateDaoSupport`和`@Autowired`,我们可以快速构建出健壮且易于维护的DAO层,同时充分利用Spring的IoC容器提供的各种优势。对于`自定义HibernateDaoSupport`这个文件,可能包含了开发者...
Spring hibernate3. HibernateDaoSupport 源码
`HibernateDaoSupport`是Spring提供的一类辅助类,它提供了与Hibernate SessionFactory的连接,简化了Hibernate的使用。首先,我们需要创建一个基础的DAO接口,然后创建其实现类并继承`HibernateDaoSupport`。例如:...
为了实现分页功能,我们首先定义了一个名为`MyHibernateDaoSupport`的类,该类继承自`HibernateDaoSupport`。`HibernateDaoSupport`类本身提供了很多便利的方法,如执行Hibernate操作等。接下来我们将在这个类中实现...
`HibernateDaoSupport`是Spring框架中为Hibernate提供的一个辅助类,用于简化DAO(数据访问对象)层的开发。本文将深入探讨`HibernateDaoSupport`的二次封装,以及如何通过封装来实现快速的统计、查询、修改和删除...
下面是一个简单的示例,展示了如何使用`BasicDao`接口和`HibernateDaoSupport`来实现一个具体的DAO类: ```java public interface BasicDao<T> { T save(T entity); T update(T entity); void delete(T entity);...
在实际使用中,继承自 HibernateDaoSupport 的 DAO 类可以通过重写其提供的方法,利用 HibernateTemplate 提供的便利功能,实现对业务对象的 CRUD 操作。例如,下面是一些使用 HibernateDaoSupport 的示例方法: ``...
综上所述,HibernateDaoSupport是Spring框架为了简化Hibernate的使用而设计的一个辅助类。它封装了SessionFactory的注入,提供了事务管理,以及常用的CRUD操作,极大地提高了开发效率,降低了出错的可能性。通过理解...
- **简介**:当项目中已经使用了Hibernate作为持久层框架时,可以选择使用`HibernateDaoSupport`。该类为子类提供了一个名为`hibernateTemplate`的属性,可以通过它调用一系列预定义的方法来进行数据库操作(如查询...
6. **DAO层支持**: 在描述中提到,我们可以选择让DAO层类继承`HibernateDaoSupport`。这个类是Spring ORM模块提供的,它提供了一个便捷的`getHibernateTemplate()`方法,可以直接使用HibernateTemplate进行数据操作...
在JPA和Hibernate中,可以使用`Page`或`Slice`接口(Spring Data提供)来实现分页查询,这些接口允许你指定页码和每页大小,返回结果包含当前页的数据以及总页数等信息。 2. **PageIndex.java** - 这个类可能是用于...
* 继承HibernateDaoSupport类,使用HibernateTemplate来持久化,HibernateTemplate是 Hibernate Session的轻量级封装 * 默认情况下运行期异常才会回滚(包括继承了RuntimeException子类),普通异常是不会滚的 ...
在MyEclipse 2014中,使用Hibernate 3进行开发的优势在于其集成的工具支持,可以便捷地创建和管理实体类以及XML映射文件。以下是一步一步的操作流程: 1. **配置Hibernate**:在项目中引入Hibernate 3的库,包括...
BaseDAO通常是通过继承HibernateDaoSupport类实现的。 BaseDAO的主要功能包括: 1. 加载指定ID的持久化对象:通过loadById方法,根据指定的类和ID加载对应的持久化对象。 2. 加载满足条件的持久化对象:通过load...
使用HibernateTemplate时,你需要继承Spring的HibernateDaoSupport类,并注入HibernateTemplate实例。 1. **配置HibernateTemplate** 首先,要在Spring配置文件中声明并配置HibernateTemplate,设置SessionFactory...
而使用`HibernateDaoSupport`则需要继承抽象类,增加了代码的复杂度。 #### 五、示例代码 为了更好地理解`HibernateDaoSupport`的使用,以下是一个简单的示例代码: ```java public class MyHibernateDao extends...