当前位置: 首页 > 图文教程 > 网络编程 > JSP > struts2+spring+hibernate分页代码[比较多]

JSP
搭建Eclipse+MyEclipse开发环境
卖jsp编程技巧的那个垃圾的所有实例的答案全部已收集,现将他人收集的实例答案公布出来,大家鉴赏!
一个jsp+AJAX评论系统
JSP 多个文件打包下载代码
JSP 动态树的实现
jsp 重复提交问题
J2ME/J2EE实现用户登录交互 实现代码
访问JSP文件或者Servlet文件时提示下载的解决方法
JSP EL表达式详细介绍
JSP 报表打印的一种简单解决方案
jsp 自定义标签实例
AJAX自学练习 无刷新从数据库后台取数据显示
AJAX 自学练习 请求与显示
AJAX 自学练习 无刷新提交并修改数据库数据并显示
jsp 文件上传浏览,支持ie6,ie7,ie8
JSP application(return String)用法详例
jsp form表单方法示例
JSP request(return String)用法详例
JSP forward用法分析实例代码分析
JSP JavaBean的setProperty属性

JSP 中的 struts2+spring+hibernate分页代码[比较多]


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 415 ::
收藏到网摘: n/a

J2EE系统中分页显示,修改dao层,service层,action层,两个分页类文件,代码如下 dao层接口:
Java代码
复制代码 代码如下:
package com.last999.im.news.dao.impl;
import java.util.*;
import com.last999.im.news.dao.KindEntityDao;
import com.last999.im.news.entity.KindEntity;
import com.last999.im.news.web.PageTool;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.HibernateException;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
public class KindEntityDaoHibernate extends HibernateDaoSupport implements KindEntityDao{
public KindEntity get(String uuid){
return (KindEntity)getHibernateTemplate().get(KindEntity.class,uuid);
}
public void save(KindEntity kindEntity){
getHibernateTemplate().save(kindEntity);
}
public void update(KindEntity kindEntity){
getHibernateTemplate().saveOrUpdate(kindEntity);
}
public void delete(KindEntity kindEntity){
getHibernateTemplate().delete(kindEntity);
}
public void delete(String uuid){
getHibernateTemplate().delete((KindEntity)getHibernateTemplate().get(KindEntity.class,uuid));
}
public List findAll(){
return getHibernateTemplate().find("from KindEntity");
}
public KindEntity findKindEntityByName(String name){
List k1 = getHibernateTemplate().find("from KindEntity as ke where ke.name = ?",name);
if (k1 != null && k1.size() == 1){
return (KindEntity)k1.get(0);
}
return null;
}
public int getRows(){
return getHibernateTemplate().find("from KindEntity").size();
}
public List getKindEntity(PageTool pageInfo){
final int size1=pageInfo.getSize();
final int startRow=(pageInfo.getCur()-1)*pageInfo.getSize();
return this.getHibernateTemplate().executeFind(new HibernateCallback(){
public List doInHibernate(Session session) throws HibernateException{
Query query = session.createQuery("from KindEntity");
query.setFirstResult(startRow);
query.setMaxResults(size1);
return query.list();
}
}
);
}
}
SERVICE层接口:
Java代码
复制代码 代码如下:
实现类:
Java代码
复制代码 代码如下:
action类:
Java代码
复制代码 代码如下:
分页辅助工具类:
Java代码
package com.last999.im.news.web;
public class PageTool{
private int cur=1;
private int size=6;
private int total=1;
public int getCur(){
return this.cur;
}
public void setCur(int cur) {
this.cur=cur;
}
public int getSize(){
return this.size;
}
public void setSize(int size) {
this.size=size;
}
public int getTotal(){
return this.total;
}
public void setTotal(int total) {
this.total=total;
}
public PageTool(){}
public PageTool(int cur,int size,int total){
this.cur=cur;
this.size=size;
this.total=total;
}
public PageTool(int size){
this.size=size;
this.cur=1;
this.total=1;
}
}
package com.last999.im.news.web;
public class PageTool{
private int cur=1;
private int size=6;
private int total=1;
public int getCur(){
return this.cur;
}
public void setCur(int cur) {
this.cur=cur;
}
public int getSize(){
return this.size;
}
public void setSize(int size) {
this.size=size;
}
public int getTotal(){
return this.total;
}
public void setTotal(int total) {
this.total=total;
}
public PageTool(){}
public PageTool(int cur,int size,int total){
this.cur=cur;
this.size=size;
this.total=total;
}
public PageTool(int size){
this.size=size;
this.cur=1;
this.total=1;
}
}
package com.last999.im.news.web;
public class PageTool{
private int cur=1;
private int size=6;
private int total=1;
public int getCur(){
return this.cur;
}
public void setCur(int cur) {
this.cur=cur;
}
public int getSize(){
return this.size;
}
public void setSize(int size) {
this.size=size;
}
public int getTotal(){
return this.total;
}
public void setTotal(int total) {
this.total=total;
}
public PageTool(){}
public PageTool(int cur,int size,int total){
this.cur=cur;
this.size=size;
this.total=total;
}
public PageTool(int size){
this.size=size;
this.cur=1;
this.total=1;
}
}
J2EE系统中分页显示,修改dao层,service层,action层,两个分页类文件,代码如下
PageMaker.java
Java代码
package com.last999.im.news.web;
import com.last999.im.news.web.PageTool;
public class PageMaker {
public PageMaker(){}
public String makeList(PageTool pageinfo,String url){
int linkNumber=10;
int halfLinkNumber=5;
String pageStyle="<style> .ptbl {border:1px solid #CEDBEF;font-size:12px;padding:0;font-family:Arial;width:auto} .ptbl a {text-decoration:none;color:#555555} .ptbl td {padding-top:0px;padding-bottom:0px;padding-left:4px;padding-right:4px} .strong {background:#CEDBEF;font-weight:800;color:#FF7D00} .strong a{color:#FF7D00} .page_input {background:#ffffff;border:1px solid #CEDBEF;border-top:none;border-bottom:none;color:#FF7D00;width:30px;margin:0px } </style>";
String pageTable="<table border='0'cellpadding='0' cellspacing='0' bgcolor='#CEDBEF' class='ptbl'><tr align='center' bgcolor='#FFFBFF'>";
//a string that will be decretion to show
StringBuffer pagelist=new StringBuffer("");
//get current page.
int curpage=pageinfo.getCur();
int pagenumber=pageinfo.getTotal()/pageinfo.getSize()+1;
//make it's pre,next page
int prepage=curpage-1;
prepage=prepage<=0?1:prepage;
int nextpage=curpage+1;
nextpage=nextpage>=pagenumber?pagenumber:nextpage;
//finger out how many page total
pagelist.append(pageStyle);
pagelist.append(pageTable);
pagelist.append("<td>Record:<font color='red'>"+pageinfo.getTotal()+"</font></td>");
//frist page
//pagelist.append("<td><a href='"+url+"1'>|<</a></td>");
//pagelist.append("<td><a href='"+url+prepage+"'><</a></td>");
if (pagenumber<=linkNumber){
for(int i=1;i<=pagenumber;i++){
if(i==curpage)
pagelist.append("<td class='strong'>"+i+"</td>");
else
pagelist.append("<td><a href='"+url+i+"'>"+i+"</a></td>");
}
}else{
int begin=curpage-halfLinkNumber;
begin=(begin<=0)?1:begin;
begin=((halfLinkNumber+curpage)>pagenumber) ? (pagenumber-linkNumber+1):begin;
for(int i=begin;i<=linkNumber+begin-1;i++){
if(i==curpage){
pagelist.append("<td class='strong'>"+i+"</td>");
pagelist.append("\n");
}
else{
pagelist.append("<td><a href='<s:url action='"+url+"'><s:param name='ppp' value='"+i+"'/></s:url>'>"+i+"</a></td>");
pagelist.append("\n");
}
}
}
//pagelist.append("<td><a href='"+url+nextpage+"'>></a></td>");
//pagelist.append("<td><a href='"+url+pagenumber+"'>>|</a></td>");
pagelist.append("<td>Page:<font color='red'>"+pagenumber+"</font></td></tr></table>");
return pagelist.toString();
}
}
package com.last999.im.news.web;
import com.last999.im.news.web.PageTool;
public class PageMaker {
public PageMaker(){}
public String makeList(PageTool pageinfo,String url){
int linkNumber=10;
int halfLinkNumber=5;
String pageStyle="<style> .ptbl {border:1px solid #CEDBEF;font-size:12px;padding:0;font-family:Arial;width:auto} .ptbl a {text-decoration:none;color:#555555} .ptbl td {padding-top:0px;padding-bottom:0px;padding-left:4px;padding-right:4px} .strong {background:#CEDBEF;font-weight:800;color:#FF7D00} .strong a{color:#FF7D00} .page_input {background:#ffffff;border:1px solid #CEDBEF;border-top:none;border-bottom:none;color:#FF7D00;width:30px;margin:0px } </style>";
String pageTable="<table border='0'cellpadding='0' cellspacing='0' bgcolor='#CEDBEF' class='ptbl'><tr align='center' bgcolor='#FFFBFF'>";
//a string that will be decretion to show
StringBuffer pagelist=new StringBuffer("");
//get current page.
int curpage=pageinfo.getCur();
int pagenumber=pageinfo.getTotal()/pageinfo.getSize()+1;
//make it's pre,next page
int prepage=curpage-1;
prepage=prepage<=0?1:prepage;
int nextpage=curpage+1;
nextpage=nextpage>=pagenumber?pagenumber:nextpage;
//finger out how many page total
pagelist.append(pageStyle);
pagelist.append(pageTable);
pagelist.append("<td>Record:<font color='red'>"+pageinfo.getTotal()+"</font></td>");
//frist page
//pagelist.append("<td><a href='"+url+"1'>|<</a></td>");
//pagelist.append("<td><a href='"+url+prepage+"'><</a></td>");
if (pagenumber<=linkNumber){
for(int i=1;i<=pagenumber;i++){
if(i==curpage)
pagelist.append("<td class='strong'>"+i+"</td>");
else
pagelist.append("<td><a href='"+url+i+"'>"+i+"</a></td>");
}
}else{
int begin=curpage-halfLinkNumber;
begin=(begin<=0)?1:begin;
begin=((halfLinkNumber+curpage)>pagenumber) ? (pagenumber-linkNumber+1):begin;
for(int i=begin;i<=linkNumber+begin-1;i++){
if(i==curpage){
pagelist.append("<td class='strong'>"+i+"</td>");
pagelist.append("\n");
}
else{
pagelist.append("<td><a href='<s:url action='"+url+"'><s:param name='ppp' value='"+i+"'/></s:url>'>"+i+"</a></td>");
pagelist.append("\n");
}
}
}
//pagelist.append("<td><a href='"+url+nextpage+"'>></a></td>");
//pagelist.append("<td><a href='"+url+pagenumber+"'>>|</a></td>");
pagelist.append("<td>Page:<font color='red'>"+pagenumber+"</font></td></tr></table>");
return pagelist.toString();
}
}
J2EE系统中分页显示,修改dao层,service层,action层,两个分页类文件,代码如下
package com.last999.im.news.web;
import com.last999.im.news.web.PageTool;
public class PageMaker {
public PageMaker(){}
public String makeList(PageTool pageinfo,String url){
int linkNumber=10;
int halfLinkNumber=5;
String pageStyle="<style> .ptbl {border:1px solid #CEDBEF;font-size:12px;padding:0;font-family:Arial;width:auto} .ptbl a {text-decoration:none;color:#555555} .ptbl td {padding-top:0px;padding-bottom:0px;padding-left:4px;padding-right:4px} .strong {background:#CEDBEF;font-weight:800;color:#FF7D00} .strong a{color:#FF7D00} .page_input {background:#ffffff;border:1px solid #CEDBEF;border-top:none;border-bottom:none;color:#FF7D00;width:30px;margin:0px } </style>";
String pageTable="<table border='0'cellpadding='0' cellspacing='0' bgcolor='#CEDBEF' class='ptbl'><tr align='center' bgcolor='#FFFBFF'>";
//a string that will be decretion to show
StringBuffer pagelist=new StringBuffer("");
//get current page.
int curpage=pageinfo.getCur();
int pagenumber=pageinfo.getTotal()/pageinfo.getSize()+1;
//make it's pre,next page
int prepage=curpage-1;
prepage=prepage<=0?1:prepage;
int nextpage=curpage+1;
nextpage=nextpage>=pagenumber?pagenumber:nextpage;
//finger out how many page total
pagelist.append(pageStyle);
pagelist.append(pageTable);
pagelist.append("<td>Record:<font color='red'>"+pageinfo.getTotal()+"</font></td>");
//frist page
//pagelist.append("<td><a href='"+url+"1'>|<</a></td>");
//pagelist.append("<td><a href='"+url+prepage+"'><</a></td>");
if (pagenumber<=linkNumber){
for(int i=1;i<=pagenumber;i++){
if(i==curpage)
pagelist.append("<td class='strong'>"+i+"</td>");
else
pagelist.append("<td><a href='"+url+i+"'>"+i+"</a></td>");
}
}else{
int begin=curpage-halfLinkNumber;
begin=(begin<=0)?1:begin;
begin=((halfLinkNumber+curpage)>pagenumber) ? (pagenumber-linkNumber+1):begin;
for(int i=begin;i<=linkNumber+begin-1;i++){
if(i==curpage){
pagelist.append("<td class='strong'>"+i+"</td>");
pagelist.append("\n");
}
else{
pagelist.append("<td><a href='<s:url action='"+url+"'><s:param name='ppp' value='"+i+"'/></s:url>'>"+i+"</a></td>");
pagelist.append("\n");
}
}
}
//pagelist.append("<td><a href='"+url+nextpage+"'>></a></td>");
//pagelist.append("<td><a href='"+url+pagenumber+"'>>|</a></td>");
pagelist.append("<td>Page:<font color='red'>"+pagenumber+"</font></td></tr></table>");
return pagelist.toString();
}
}



KindEntity.java

Java代码
package com.last999.im.news.entity;
/**
* @hibernate.class
* table="kind"
* dynamic-update="true"
*/
public class KindEntity extends Persistent{
private String title;
private String content;
private String parentId;
private String description;
/**
* @hibernate.property
*/
public String getDescription(){
return this.description;
}
public void setDescription(String description) {
this.description=description;
}
private String em1;
private String em2;
private String em3;
/**
* @hibernate.property
*/
public String getEm3(){
return this.em3;
}
public void setEm3(String em3) {
this.em3=em3;
}
/**
* @hibernate.property
*/
public String getEm2(){
return this.em2;
}
public void setEm2(String em2) {
this.em2=em2;
}
/**
* @hibernate.property
*/
public String getEm1(){
return this.em1;
}
public void setEm1(String em1) {
this.em1=em1;
}
/**
* @hibernate.property
*/
public String getParentId(){
return this.parentId;
}
public void setParentId(String parentId) {
this.parentId=parentId;
}
/**
* @hibernate.property
* @hibernate.column name="content" sql-type="TEXT"
*/
public String getContent(){
return this.content;
}
public void setContent(String content) {
this.content=content;
}
/**
* @hibernate.property
*/
public String getTitle(){
return this.title;
}
public void setTitle(String title) {
this.title=title;
}
}
view plaincopy to clipboardprint?
package com.last999.im.news.entity;
/**
* @hibernate.class
* table="kind"
* dynamic-update="true"
*/
public class KindEntity extends Persistent{
private String title;
private String content;
private String parentId;
private String description;
/**
* @hibernate.property
*/
public String getDescription(){
return this.description;
}
public void setDescription(String description) {
this.description=description;
}
private String em1;
private String em2;
private String em3;
/**
* @hibernate.property
*/
public String getEm3(){
return this.em3;
}
public void setEm3(String em3) {
this.em3=em3;
}
/**
* @hibernate.property
*/
public String getEm2(){
return this.em2;
}
public void setEm2(String em2) {
this.em2=em2;
}
/**
* @hibernate.property
*/
public String getEm1(){
return this.em1;
}
public void setEm1(String em1) {
this.em1=em1;
}
/**
* @hibernate.property
*/
public String getParentId(){
return this.parentId;
}
public void setParentId(String parentId) {
this.parentId=parentId;
}
/**
* @hibernate.property
* @hibernate.column name="content" sql-type="TEXT"
*/
public String getContent(){
return this.content;
}
public void setContent(String content) {
this.content=content;
}
/**
* @hibernate.property
*/
public String getTitle(){
return this.title;
}
public void setTitle(String title) {
this.title=title;
}
}
package com.last999.im.news.entity;
/**
* @hibernate.class
* table="kind"
* dynamic-update="true"
*/
public class KindEntity extends Persistent{
private String title;
private String content;
private String parentId;
private String description;
/**
* @hibernate.property
*/
public String getDescription(){
return this.description;
}
public void setDescription(String description) {
this.description=description;
}
private String em1;
private String em2;
private String em3;
/**
* @hibernate.property
*/
public String getEm3(){
return this.em3;
}
public void setEm3(String em3) {
this.em3=em3;
}
/**
* @hibernate.property
*/
public String getEm2(){
return this.em2;
}
public void setEm2(String em2) {
this.em2=em2;
}
/**
* @hibernate.property
*/
public String getEm1(){
return this.em1;
}
public void setEm1(String em1) {
this.em1=em1;
}
/**
* @hibernate.property
*/
public String getParentId(){
return this.parentId;
}
public void setParentId(String parentId) {
this.parentId=parentId;
}
/**
* @hibernate.property
* @hibernate.column name="content" sql-type="TEXT"
*/
public String getContent(){
return this.content;
}
public void setContent(String content) {
this.content=content;
}
/**
* @hibernate.property
*/
public String getTitle(){
return this.title;
}
public void setTitle(String title) {
this.title=title;
}
}



为什么没有在页面接收的代码:

Html代码
<%@ page contentType="text/html;charset=utf-8" language="java" %>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title>
showkind
</title>
</head>
<html>
<body>
<center>
<table border="1">
<tr>
<td>
<table border="0" width="755" bgcolor="#eeeeee">
<tr>
<font size="3">
<b>
These are all the kinds:
</b>
</font>
</tr>
<tr>
<td width="%25">title</td>
<td width="%25">description</td>
<td width="%25">parentId</td>
<td width="25%">Content</td>
</tr>
<s:iterator value="%{kindList}" id="kind">
<tr>
<td>
<s:property value="#kind.title"/>
</td>
<td>
<s:property value="#kind.description"/>
</td>
<td>
<s:property value="#kind.parentId"/>
</td>
<td>
<s:property value="#kind.content"/>
</td>
<!--
<td>
<a href="<s:url action='kindDelete'><s:param name='uuid' value='#kind.uuid'/></s:url>">Delete</a>
</td>
-->
</s:iterator>
</tr>
</table>
</td>
</tr>
</table>
<s:property value="pager" escape="false"/>
</center>
</body>
</html>