package org.yeeku.enhance;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import org.hibernate.SessionFactory;
import org.hibernate.Session;
import org.hibernate.Query;
import org.hibernate.HibernateException;
import java.sql.SQLException;
import java.util.List;
/**
* @author yeeku.H.lee kongyeeku@163.com
* @version 1.0
* <br>Copyright (C), 2005-2008, yeeku.H.Lee
* <br>This program is protected by copyright laws.
* <br>Program Name:
* <br>Date:
*/
public class YeekuHibernateDaoSupport extends HibernateDaoSupport
{
/**
* 使用hql 语句进行分页查询操作
* @param hql 需要查询的hql语句
* @param offset 第一条记录索引
* @param pageSize 每页需要显示的记录数
* @return 当前页的所有记录
*/
public List findByPage(final String hql,
final int offset, final int pageSize)
{
List list = getHibernateTemplate().executeFind(new HibernateCallback()
{
public Object doInHibernate(Session session)
throws HibernateException, SQLException
{
List result = session.createQuery(hql)
.setFirstResult(offset)
.setMaxResults(pageSize)
.list();
return result;
}
});
return list;
}
/**
* 使用hql 语句进行分页查询操作
* @param hql 需要查询的hql语句
* @param value 如果hql有一个参数需要传入,value就是传入的参数
* @param offset 第一条记录索引
* @param pageSize 每页需要显示的记录数
* @return 当前页的所有记录
*/
public List findByPage(final String hql , final Object value ,
final int offset, final int pageSize)
{
List list = getHibernateTemplate().executeFind(new HibernateCallback()
{
public Object doInHibernate(Session session)
throws HibernateException, SQLException
{
List result = session.createQuery(hql)
.setParameter(0, value)
.setFirstResult(offset)
.setMaxResults(pageSize)
.list();
return result;
}
});
return list;
}
/**
* 使用hql 语句进行分页查询操作
* @param hql 需要查询的hql语句
* @param values 如果hql有多个个参数需要传入,values就是传入的参数数组
* @param offset 第一条记录索引
* @param pageSize 每页需要显示的记录数
* @return 当前页的所有记录
*/
public List findByPage(final String hql, final Object[] values,
final int offset, final int pageSize)
{
List list = getHibernateTemplate().executeFind(new HibernateCallback()
{
public Object doInHibernate(Session session)
throws HibernateException, SQLException
{
Query query = session.createQuery(hql);
for (int i = 0 ; i < values.length ; i++)
{
query.setParameter( i, values[i]);
}
List result = query.setFirstResult(offset)
.setMaxResults(pageSize)
.list();
return result;
}
});
return list;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
整合Struts+Hibernate+Spring应用开发详解
共441个文件
java:148个
class:143个
xml:85个
4星 · 超过85%的资源 需积分: 10 28 下载量 8 浏览量
2010-04-05
08:52:58
上传
评论 1
收藏 13.32MB RAR 举报
温馨提示
本光盘是《整合Struts+Hibernate+Spring应用开发详解》一书的配书光盘,书中的代码按章存放, 即第二章所使用的代码放在codes文件夹的02文件夹下,依次类推。 本光盘根目录下有11个文件夹,其内容和含义说明如下: (1) 02~11个文件夹名对应于《整合Struts+Hibernate+Spring应用开发详解》中的章名, 即第二章所使用的代码放在codes文件夹的02文件夹下,依次类推。 (2) springlib文件夹下放的是编译和运行Spring项目的类库文件。
资源推荐
资源详情
资源评论
收起资源包目录
整合Struts+Hibernate+Spring应用开发详解 (441个子文件)
LoginAction.class 2KB
LoginAction.class 2KB
LoginAction.class 2KB
PersonDaoImpl.class 2KB
SpringTest.class 2KB
BeanTest.class 2KB
Chinese.class 1KB
Chinese.class 1KB
BeanTest.class 1KB
AuthorityInterceptor.class 1KB
SpringTest.class 1KB
MyBeanPostProcessor.class 1KB
Chinese.class 1KB
SpringTest.class 1KB
ProxyHandler.class 1KB
BeanTest.class 1KB
SpringTest.class 1KB
EmailNotifier.class 1KB
SpringTest.class 1KB
BeanTest.class 1KB
BeanTest.class 1KB
BeanTest.class 1KB
BeanTest.class 1KB
BeanTest.class 1KB
BeanTest.class 1KB
BeanTest.class 1KB
SpringTest.class 1KB
BeanTest.class 1KB
Chinese.class 1KB
Chinese.class 1KB
Chinese.class 1KB
TransactionTestImpl.class 1KB
TransactionTestImpl.class 1KB
TransactionTestImpl.class 1KB
TransactionTestImpl.class 1KB
Chinese.class 1KB
TestImpl.class 1KB
TestImpl.class 1KB
TestImpl.class 1KB
TestImpl.class 1KB
Chinese.class 1KB
BeanTest.class 1KB
SpringTest.class 1KB
HibernateTest.class 1KB
Person.class 1KB
BeanTest.class 966B
MyBeanFactoryPostProcessor.class 958B
Chinese.class 951B
SpringTest.class 921B
MainTest.class 915B
MainTest.class 915B
MainTest.class 915B
MainTest.class 915B
MyProxyFactory.class 894B
BeanTest.class 879B
BeanTest.class 840B
BeanTest.class 840B
SpringTest.class 819B
SteelAxe.class 813B
Chinese.class 794B
Chinese.class 794B
Cat.class 794B
Gundog.class 792B
Dog.class 791B
TestDog.class 789B
PersonFactory.class 739B
LoginForm.class 729B
LoginForm.class 729B
LoginForm.class 729B
Chinese.class 718B
Chinese.class 718B
American.class 712B
American.class 712B
BeingFactory.class 711B
DogFactory.class 710B
Chinese.class 681B
Chinese.class 680B
Person.class 667B
TestActionImpl.class 644B
TestServiceImpl.class 634B
EmailEvent.class 602B
DogImpl.class 596B
SteelAxe.class 583B
SteelAxe.class 583B
StoneAxe.class 583B
SteelAxe.class 583B
SteelAxe.class 583B
SteelAxe.class 583B
SteelAxe.class 583B
PersonFactory.class 578B
ValidBeanImpl.class 575B
ValidBeanImpl.class 575B
ValidBeanImpl.class 575B
ExampleBean.class 560B
Son.class 526B
ValueGenerator.class 408B
SteelAxe.class 389B
StoneAxe.class 389B
SteelAxe.class 389B
StoneAxe.class 389B
共 441 条
- 1
- 2
- 3
- 4
- 5
资源评论
- shinedidi2011-11-09一部分而已,不全面
- 百奇一家2019-09-03不全面,一部分
- hh哈哈zz2015-02-06楼主的资源不全,不能够覆盖所有章节,下载分数还给的这么高,,,,,,,
liumang0213
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功