壮观的动物大迁徙:jsp+struts2+pageUtil ( 列表页面示例)
来源:百度文库 编辑:偶看新闻 时间:2024/05/10 06:38:22
1、分页类:class PageView {
//查询结果的总条数
private int totalNum;
//分页查询的List结果
private List pageList;
//每页显示多少条数据
private int pageSize;
//总共多少页
private int pageTotal;
//当前是第几页
private int page;
get and set method....}2.daoImpl类public class FindByHqlDaoImpl extends HibernateDaoSupport implements FindByHqlDao{public List findByHql(final String hql,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);
if(offset>0){
query=query.setFirstResult(offset);
}
if(pageSize>0){
query=query.setMaxResults(pageSize);
}
return query.list();
}
});
return list;
}
public List findByHql(final String hql , final Object value ,final int offset)
{
return this.findByHql(hql, value, offset, 0);
}
public List findByHql(final String hql , final Object value)
{
return this.findByHql(hql, value, 0, 0);
}
public List findByHql(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]);
}
if(offset>0){
query=query.setFirstResult(offset);
}
if(pageSize>0){
query=query.setMaxResults(pageSize);
}
return query.list();
/*
List result = query.setFirstResult(offset)
.setMaxResults(pageSize)
.list();
return result;
*/
}
});
return list;
}
public List findByHql(final String hql, final int offset)
{
return this.findByHql(hql, offset, 0);
}
public List findByHql(final String hql)
{
return this.findByHql(hql, 0, 0);
}
public List findByHql(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
{
Query query=session.createQuery(hql).setParameter(0, value);
if(offset>0){
query=query.setFirstResult(offset);
}
if(pageSize>0){
query=query.setMaxResults(pageSize);
}
return query.list();
/*
List result = session.createQuery(hql)
.setParameter(0, value)
.setFirstResult(offset)
.setMaxResults(pageSize)
.list();
return result;
*/
}
});
return list;
}
public List findByHql(final String hql, final Object[] values,final int offset)
{
return findByHql(hql,values, offset, 0);
}
public List findByHql(final String hql, final Object[] values)
{
return findByHql(hql,values, 0, 0);
}3.action类:class ArticleAction extends ActionSupport {/**
*添加分页 查找栏目ID下的文章列表
*
* @return
*/
public String findArticlesByFieldIdMethod() {
int pageNum = 0;
String pageNum_str = ServletActionContext.getRequest().getParameter(
"pager.offset");
if (pageNum_str != null) {
pageNum = Integer.parseInt(pageNum_str);
}
this.findByName = null;
HttpServletRequest request = ServletActionContext.getRequest();
Object[] temp = new Object[2];
temp[0] = this.fieldId;
if (this.superArtId == 0) {
temp[1] = new String("s"); } else {
temp[1] = this.superArtId;
}
pageView = model.getArticlePageview(pageNum, temp, 10);
List list = pageView.getPageList();
if (list != null) {
this.articleList = list;
field = model.getFieldByFieldId(this.fieldId);
request.setAttribute("field", field);
this.fieldName = field.getFieldName();
return "success";
} else {
message = "找栏目ID下面的文章列表异常";
return "error";
} } } 4.model类://分页显示文章方法
public PageView getArticlePageview(int pageNum,Object[] values, int pageSize){
int totalNum=0;
if(values[1].equals("s")){
Long t = (Long)values[0];
totalNum = artDao.findArticleByFieldId(t,0).size();
}else{
Long t = (Long)values[0];
Long t1 = (Long)values[1];
totalNum= artDao.findArticleByFieldId(t,t1).size();
}
int pageTotal = 0;
if(totalNum%pageSize != 0) {
pageTotal = (int)(totalNum/pageSize)+1;
} else {
pageTotal = totalNum/pageSize;
}
int page = pageNum/pageSize+1;
pageView.setTotalNum(totalNum);
pageView.setPage(page);
pageView.setPageTotal(pageTotal);
pageView.setPageSize(pageSize);
List pageArtList = artDao.getPageviewListForArt(pageNum,values, pageSize);
if(pageArtList.size() != 0) {
pageView.setPageList(pageArtList);
} else {
pageView.setPageList(new ArrayList());
}
return pageView;
}5.daoimpl类:class ArticleDaoImpl extends FindByHqlDaoImpl implements ArticleDaopublic List getPageviewListForArt(int pageNum, Object[] values,
int pageSize) {
String hql = "";
List list = new ArrayList();
Long fid = (Long)values[0];
Object aid = values[1];
if(aid.equals("s")){
hql = "from Article art where art.artArray is null and art.fieldId.fieldId=? order by art.artStatus desc,art.artSequence";
values[1]=null;
System.out.println("null"+hql);
list = findByHql(hql, fid, pageNum, pageSize);
}
else{
hql="from Article art where art.artArray.articleId=? and art.fieldId.fieldId=? order by art.artStatus desc, art.artSequence";
list = findByHql(hql, values, pageNum, pageSize);
}
return list;
}6.jsp页面:<%@ page language="java"
import="java.util.*"
import="com.kmwh.core.pojo.Article"
import="com.kmwh.core.pojo.Fieldsinfo"
pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://jsptags.com/tags/navigation/pager" prefix="pg" %>
<%@taglib prefix="s" uri="/struts-tags"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
//查询结果的总条数
private int totalNum;
//分页查询的List结果
private List pageList;
//每页显示多少条数据
private int pageSize;
//总共多少页
private int pageTotal;
//当前是第几页
private int page;
get and set method....}2.daoImpl类public class FindByHqlDaoImpl extends HibernateDaoSupport implements FindByHqlDao{public List findByHql(final String hql,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);
if(offset>0){
query=query.setFirstResult(offset);
}
if(pageSize>0){
query=query.setMaxResults(pageSize);
}
return query.list();
}
});
return list;
}
public List findByHql(final String hql , final Object value ,final int offset)
{
return this.findByHql(hql, value, offset, 0);
}
public List findByHql(final String hql , final Object value)
{
return this.findByHql(hql, value, 0, 0);
}
public List findByHql(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]);
}
if(offset>0){
query=query.setFirstResult(offset);
}
if(pageSize>0){
query=query.setMaxResults(pageSize);
}
return query.list();
/*
List result = query.setFirstResult(offset)
.setMaxResults(pageSize)
.list();
return result;
*/
}
});
return list;
}
public List findByHql(final String hql, final int offset)
{
return this.findByHql(hql, offset, 0);
}
public List findByHql(final String hql)
{
return this.findByHql(hql, 0, 0);
}
public List findByHql(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
{
Query query=session.createQuery(hql).setParameter(0, value);
if(offset>0){
query=query.setFirstResult(offset);
}
if(pageSize>0){
query=query.setMaxResults(pageSize);
}
return query.list();
/*
List result = session.createQuery(hql)
.setParameter(0, value)
.setFirstResult(offset)
.setMaxResults(pageSize)
.list();
return result;
*/
}
});
return list;
}
public List findByHql(final String hql, final Object[] values,final int offset)
{
return findByHql(hql,values, offset, 0);
}
public List findByHql(final String hql, final Object[] values)
{
return findByHql(hql,values, 0, 0);
}3.action类:class ArticleAction extends ActionSupport {/**
*添加分页 查找栏目ID下的文章列表
*
* @return
*/
public String findArticlesByFieldIdMethod() {
int pageNum = 0;
String pageNum_str = ServletActionContext.getRequest().getParameter(
"pager.offset");
if (pageNum_str != null) {
pageNum = Integer.parseInt(pageNum_str);
}
this.findByName = null;
HttpServletRequest request = ServletActionContext.getRequest();
Object[] temp = new Object[2];
temp[0] = this.fieldId;
if (this.superArtId == 0) {
temp[1] = new String("s"); } else {
temp[1] = this.superArtId;
}
pageView = model.getArticlePageview(pageNum, temp, 10);
List list = pageView.getPageList();
if (list != null) {
this.articleList = list;
field = model.getFieldByFieldId(this.fieldId);
request.setAttribute("field", field);
this.fieldName = field.getFieldName();
return "success";
} else {
message = "找栏目ID下面的文章列表异常";
return "error";
} } } 4.model类://分页显示文章方法
public PageView getArticlePageview(int pageNum,Object[] values, int pageSize){
int totalNum=0;
if(values[1].equals("s")){
Long t = (Long)values[0];
totalNum = artDao.findArticleByFieldId(t,0).size();
}else{
Long t = (Long)values[0];
Long t1 = (Long)values[1];
totalNum= artDao.findArticleByFieldId(t,t1).size();
}
int pageTotal = 0;
if(totalNum%pageSize != 0) {
pageTotal = (int)(totalNum/pageSize)+1;
} else {
pageTotal = totalNum/pageSize;
}
int page = pageNum/pageSize+1;
pageView.setTotalNum(totalNum);
pageView.setPage(page);
pageView.setPageTotal(pageTotal);
pageView.setPageSize(pageSize);
List pageArtList = artDao.getPageviewListForArt(pageNum,values, pageSize);
if(pageArtList.size() != 0) {
pageView.setPageList(pageArtList);
} else {
pageView.setPageList(new ArrayList());
}
return pageView;
}5.daoimpl类:class ArticleDaoImpl extends FindByHqlDaoImpl implements ArticleDaopublic List getPageviewListForArt(int pageNum, Object[] values,
int pageSize) {
String hql = "";
List list = new ArrayList();
Long fid = (Long)values[0];
Object aid = values[1];
if(aid.equals("s")){
hql = "from Article art where art.artArray is null and art.fieldId.fieldId=? order by art.artStatus desc,art.artSequence";
values[1]=null;
System.out.println("null"+hql);
list = findByHql(hql, fid, pageNum, pageSize);
}
else{
hql="from Article art where art.artArray.articleId=? and art.fieldId.fieldId=? order by art.artStatus desc, art.artSequence";
list = findByHql(hql, values, pageNum, pageSize);
}
return list;
}6.jsp页面:<%@ page language="java"
import="java.util.*"
import="com.kmwh.core.pojo.Article"
import="com.kmwh.core.pojo.Fieldsinfo"
pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://jsptags.com/tags/navigation/pager" prefix="pg" %>
<%@taglib prefix="s" uri="/struts-tags"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
| ||||||||||||||||||||||||||||||||||||
|
s="background: #fff; border: 1px solid #C28F27; padding: 2px 2px 0px 2px; margin: 4px; border-width: 1px 3px 1px 3px; font-size: 12px; color: #A74300;" onclick="window.history.go(-1);" /> |