首页 > 代码库 > 关于jui框架的java web分页刷新功能实现!
关于jui框架的java web分页刷新功能实现!
jsp页面部分代码:
头部:
1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 4 <%@ taglib prefix="s" uri="/struts-tags"%> 5 <%@ page isELIgnored="false" %> 6 <form id="pagerForm" method="post" action="infor/Name.do"> 7 <input type="hidden" name="pageNum" value="http://www.mamicode.com/1" /> 8 <input type="hidden" name="numPerPage" value="http://www.mamicode.com/${numPerPage}" /> 9 <input type="hidden" name="orderField" value="http://www.mamicode.com/${orderField}" />10 <input type="hidden" name="orderDirection" value="http://www.mamicode.com/${orderDirection}" />11 </form>
表格部分:
1 <tbody> 2 <s:iterator value = "http://www.mamicode.com/list"> 3 <tr target="sid_user" rel="1"> 4 <td><input type="checkbox" name="ids" value="http://www.mamicode.com/${id}"/></td> 5 <td>${nameID}</td> 6 <td>${name}</td> 7 <td>${moddate}</td> 8 <td>${modmanID}</td> 9 <td>${modmanName}</td>10 <td>11 <a title="编辑" target="dialog" href="http://www.mamicode.com/infor/EditorName.do?flag=${id}" class="btnEdit" rel="EditorName">编辑</a>12 </td>13 </tr>14 </s:iterator>15 16 </tbody>
底边分页部分:
1 <div class="panelBar"> 2 <div class="pages"> 3 <span>每页</span> 4 <select class="combox" name="numPerPage" onchange="navTabPageBreak({numPerPage:this.value})"> 5 <option <s:if test="numPerPage==1">selected="selected"</s:if> value="http://www.mamicode.com/1" >1</option> 6 7 <option <s:if test="numPerPage==20">selected="selected"</s:if> value="http://www.mamicode.com/20" >20</option> 8 <option <s:if test="numPerPage==50">selected="selected"</s:if> value="http://www.mamicode.com/50">50</option> 9 <option <s:if test="numPerPage==100">selected="selected"</s:if> value="http://www.mamicode.com/100">100</option>10 <option <s:if test="numPerPage==200">selected="selected"</s:if> value="http://www.mamicode.com/200">200</option>11 </select>12 <span>条,共${totalCount}条</span>13 </div>14 <div class="pagination" targetType="${targetType}" totalCount="${totalCount}" numPerPage="${numPerPage}" pageNumShown="10" currentPage="${pageNum}"></div>15 </div>
XML配置跳转(这个没必要参考):
<action name="Name" class="com.threegrand.www.information.action.Name" method="Name"> <result name="SUCCESS">/content/information/name.jsp</result> </action>
action层:
1 import java.util.List; 2 import java.util.Map; 3 4 import javax.servlet.http.HttpServletRequest; 5 6 import org.apache.struts2.ServletActionContext; 7 8 import com.opensymphony.xwork2.ActionSupport; 9 import com.threegrand.www.information.service.NameService; 10 11 public class Name extends ActionSupport { 12 NameService se = new NameService(); 13 private List<Map<String, Object>> list; 14 private String name; 15 16 private String specimen; 17 private String nameID; 18 private String moddate; 19 private String modmanID; 20 private String modmanName; 21 public NameService getSe() { 22 return se; 23 } 24 public void setSe(NameService se) { 25 this.se = se; 26 } 27 public String getName() { 28 return name; 29 } 30 public void setName(String name) { 31 this.name = name; 32 } 33 public List<Map<String, Object>> getList() { 34 return list; 35 } 36 public void setList(List<Map<String, Object>> list) { 37 this.list = list; 38 } 39 public String getSpecimen() { 40 return specimen; 41 } 42 public void setSpecimen(String specimen) { 43 this.specimen = specimen; 44 } 45 public String getNameID() { 46 return nameID; 47 } 48 public void setNameID(String nameID) { 49 this.nameID = nameID; 50 } 51 public String getModdate() { 52 return moddate; 53 } 54 public void setModdate(String moddate) { 55 this.moddate = moddate; 56 } 57 public String getModmanID() { 58 return modmanID; 59 } 60 public void setModmanID(String modmanID) { 61 this.modmanID = modmanID; 62 } 63 public String getModmanName() { 64 return modmanName; 65 } 66 public void setModmanName(String modmanName) { 67 this.modmanName = modmanName; 68 } 69 70 /* 71 * 分页刷新 72 * 73 */ 74 75 private String loginName = ""; 76 private Integer pageNum=1; 77 private Integer currentPage = 1; // 当前是第几页 78 private String targetType="navTab"; // navTab或dialog,用来标记是navTab上的分页还是dialog上的分页 79 private Integer totalCount=0; // 总条数 80 private Integer numPerPage=20; // 每页显示多少条 81 private Integer pageNumShown=10; // 页标数字多少个 82 private Integer pageCount = 0; // 总页数 83 private String orderField; 84 private String orderDirection; 85 public String getLoginName() { 86 return loginName; 87 } 88 public void setLoginName(String loginName) { 89 this.loginName = loginName; 90 } 91 public Integer getPageNum() { 92 return pageNum; 93 } 94 public void setPageNum(Integer pageNum) { 95 this.pageNum = pageNum; 96 } 97 public Integer getCurrentPage() { 98 return currentPage; 99 }100 public void setCurrentPage(Integer currentPage) {101 this.currentPage = currentPage;102 }103 public String getTargetType() {104 return targetType;105 }106 public void setTargetType(String targetType) {107 this.targetType = targetType;108 }109 public Integer getTotalCount() {110 return totalCount;111 }112 public void setTotalCount(Integer totalCount) {113 this.totalCount = totalCount;114 }115 public Integer getNumPerPage() {116 return numPerPage;117 }118 public void setNumPerPage(Integer numPerPage) {119 this.numPerPage = numPerPage;120 }121 public Integer getPageNumShown() {122 return pageNumShown;123 }124 public void setPageNumShown(Integer pageNumShown) {125 this.pageNumShown = pageNumShown;126 }127 public Integer getPageCount() {128 return pageCount;129 }130 public void setPageCount(Integer pageCount) {131 this.pageCount = pageCount;132 }133 public String getOrderField() {134 return orderField;135 }136 public void setOrderField(String orderField) {137 this.orderField = orderField;138 }139 public String getOrderDirection() {140 return orderDirection;141 }142 public void setOrderDirection(String orderDirection) {143 this.orderDirection = orderDirection;144 }145 146 public String Name(){147 page();148 list= se.pagination(loginName,pageNum,numPerPage,orderField,orderDirection);149 return "SUCCESS";150 } 151 152 public void page() {153 totalCount = se.getCout(loginName);154 pageCount = totalCount % numPerPage == 0 ? totalCount / numPerPage: totalCount / numPerPage + 1;155 }156 157
service层:
1 import java.sql.Connection; 2 import java.sql.PreparedStatement; 3 import java.sql.ResultSet; 4 import java.sql.SQLException; 5 import java.util.ArrayList; 6 import java.util.List; 7 import java.util.Map; 8 9 import javax.servlet.http.HttpServletRequest;10 import org.apache.struts2.ServletActionContext;11 import com.threegrand.www.utils.DBUtil;12 13 public class NameService {14 DBUtil db = new DBUtil();15 List<Map<String,Object>> list;16 /*17 * 分页刷新18 * 19 */20 21 private Connection conn=null;22 private PreparedStatement ps=null;23 private ResultSet rs=null;24 25 public Integer getCout(String name) {26 int count=0;27 try {28 String sql="select count(1) from name where 1=1 and name like ?";29 conn=db.getConnection();30 ps=conn.prepareStatement(sql);31 ps.setString(1,"%"+name+"%");32 rs=ps.executeQuery();33 if(rs.next()){34 count=rs.getInt(1);35 }36 37 } catch (SQLException e) {38 e.printStackTrace();39 }finally{40 try {41 if (rs != null) {42 rs.close();43 }44 if (ps != null) {45 ps.close();46 }47 if (conn != null) {48 conn.close();49 }50 } catch (SQLException e) {51 e.printStackTrace();52 }53 }54 return count;55 }56 public List<Map<String, Object>> pagination(String name,Integer currentPage,Integer numPerPage,String orderField,String orderDirection){57 58 String sql="SELECT id,specimen,nameID,name,moddate,modmanID,modmanName FROM name WHERE name LIKE ‘%%‘ limit "+(currentPage-1)*numPerPage +","+numPerPage;59 if(orderField!=null&&!"".equals(orderField)){60 sql="SELECT id,specimen,nameID,name,moddate,modmanID,modmanName FROM name WHERE name LIKE ‘%%‘ order by "+orderField+" "+orderDirection+" limit "+(currentPage-1)*numPerPage +","+numPerPage;61 62 }63 64 list=db.queryToList(sql);65 66 return list;67 68 69 }70
以上内容也是本人参考别人供源的代码作为参考写的,可能不是完全理解,但对比人的代码做了简化,去掉了dao层和model层。
附数据库内容:
下面是效果图:
关于jui框架的java web分页刷新功能实现!
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。