JSP分页,实体增、删、改、查(将查询结果全部返回,然后分页,适合小数据量)
2013-01-24 16:18
781 查看
1. 问题
做一个通用的增加、修改、查询、删除实体模块,主要是包含分页功能。用JSP实现。2. 样式
3. 解决
下面是JSP列表分页页面代码,此代码不能通用,需要做出自己的修改后才能使用。<%@ page contentType="text/html; charset=UTF-8"%> <%@page import="java.util.*, java.util.regex.Matcher, java.util.regex.Pattern, cn.jingdu.solr.Config"%> <% // 查询参数 request.setCharacterEncoding("UTF-8"); String word = request.getParameter("word"); if("请输入要查询的关键词……".equals(word)) { word = null; } // 如果有查询参数,需要对List做一下处理 List<String> negativeList = Config.getNegativeWords(); if(word != null && !"".equals(word)) { Pattern pattern = Pattern.compile(word); List<String> tempList = new ArrayList<String>(); for(String str: negativeList) { Matcher matcher = pattern.matcher(str); if(matcher.find()) { // 符合的输出 tempList.add(str); } } negativeList = tempList; } // 每页显示记录数 int pageSize = 12; // 总页数 int totalPages = negativeList.size()/pageSize; // 总页数取整 if(negativeList.size() > totalPages*pageSize) totalPages++; %> <HTML> <HEAD> <LINK rel="stylesheet" type="text/css" href="../css/list.css"> <SCRIPT type="text/javascript" src="../js/common.js"></SCRIPT> <SCRIPT type="text/javascript" src="../js/page.js"></SCRIPT> <SCRIPT language="JavaScript"> // 单击高亮代码 function setCurrent(obj) { var parent = obj.parentNode; for (var i = 0; i < parent.childNodes.length; i++) { parent.childNodes[i].className = "ltby"; } obj.className = "ltbysd"; } // 修改 function updateEntity(word) { js_callpage("negative.jsp?actionType=update&word=" + word,"_blank",300,50,300,300); } // 删除 function deleteEntity(word) { if(!confirm("您确认删除[" + word + "]吗?")) { return false; } js_callpage("negativeAction.jsp?actionType=delete&old_word=" + word,"_blank",300,50,300,300); } // 刷新查询,在修改、删除操作完成后调用 function refreshQuery(){ parent.refreshQuery(); } </SCRIPT> </HEAD> <BODY onload="firstPage();"> <DIV style="position:absolute;left:0px; top:0px;"> <TABLE width='100%' align='center' cellspacing='0' cellpadding='0'> <TR> <TD> <% if(negativeList.size() > 0){ for(int j=0; j<totalPages; j++){ %> <DIV id='page<%=(j+1)%>' style='display:none;'> <TABLE border="0" class='ltb' cellpadding="0" cellspacing="1" width="100%"> <TR class='lthd'> <TD width="20%" align="center" class='lthdtd'>序号</TD> <TD width="50%" align="center" class='lthdtd'>负面关键词</TD> <TD width="10%" align="center" class='lthdtd'>编辑</TD> <TD width="10%" align="center" class='lthdtd'>删除</TD> </TR> <% for(int i = j*pageSize; i < (j+1)*pageSize && i < negativeList.size(); i++){ String bgcolor=(i%2 == 0 )?"#FFFFFF":"#f0f0f0"; %> <TR class='ltby' onClick="setCurrent(this)"> <TD align="center" class='ltbytd'><%=(i+1)%></TD> <TD align="left" class='ltbytd'><%=negativeList.get(i)%></TD> <TD align="center" class='ltbytd'><A href="javascript: void updateEntity('<%=negativeList.get(i)%>');" title="编辑[<%=negativeList.get(i)%>]关键词"><IMG border="0" src="../images/edit.gif" width="10" height="10"></A> </TD> <TD align="center" class='ltbytd'><A href="javascript: void deleteEntity('<%=negativeList.get(i)%>');" title="删除[<%=negativeList.get(i)%>]关键词"><IMG border="0" src="../images/delete.gif" width="10" height="10"></A></TD> </TR> <% } %> </TABLE> </DIV> <% } }else{ %> <TABLE width="100%" align='left' cellspacing='1' class='ltb'> <TR class='lthd'> <TD width="20%" align="center" class='lthdtd'>序号</TD> <TD width="50%" align="center" class='lthdtd'>负面关键词</TD> <TD width="10%" align="center" class='lthdtd'>编辑</TD> <TD width="10%" align="center" class='lthdtd'>删除</TD> </TR> <TR class='ltby'> <TD colspan='4' align='center' class='warning'><FONT style="COLOR:red; FONT-SIZE:9pt">没有数据</FONT> </TD> </TR> </TABLE> <% } %> </TD> </TR> <TR> <TD align="right"> <DIV class="manu"> <SPAN id="prev"></SPAN> <% if(totalPages >= 1) { for(int i=1; i<=totalPages; i++) { out.println("<SPAN id=\"toPage" + i + "\"><A href=\"javascript: toAnyPage(" + i + ");\">" + i + "</A></SPAN>"); } } %> <SPAN id="next"></SPAN> </DIV> </TD> </TR> </TABLE> <INPUT type="hidden" name="totalPages" value="<%=totalPages%>"> <INPUT type="hidden" name="curPage" value="1"> <INPUT type="hidden" name="lastPage" value="0"> </DIV> </BODY> </HTML>
4. 完整代码参考
http://files.cnblogs.com/nayitian/list.zip相关文章推荐
- Solr4:Solr查询结果JSP分页显示(每次查询只返回指定记录数)
- 前台jsp获取后台查询的结果集数据并实现分页显示
- json格式数据,将数据库中查询的结果转换为json, 然后调用接口的方式返回json(方式一)
- MySQL中数据结果集分页功能的实现方法;数据库查询返回特定结果即分页查询
- jsp数据库查询分页技术
- JPA使用本地查询实现联表查询,同一结果集中返回多个实体,多个字段
- JDBC查询数据返回给jsp页面(注解方式完成)
- Model 将返回结果传入jsp,使用EL表达式无法展示数据
- 用jQuery中的ajax返回的json数据组合查询和组合查询的分页源码
- JPQL联表查询,返回结果整合联表的两个实体结果
- mongodb基础系列——数据库查询数据返回前台JSP(一)
- 用python操作mysql数据库(之数据查询结果返回字典类型)
- java socket编程,客户端发出检索字段,服务端查询数据并返回结果集
- Hibernate查询,返回new对象(注意这个新定义的类要有构造函数),使用sql带条件分页查询并且把结果显示到一个对象的集里面的解决方案
- spring mvc框架整个执行过程,从输入http url,到action映射,再到action处理,返回jsp文件,解析jsp文件,然后渲染, 到返回给浏览器展示结果
- 小小编程之我见(2)---jsp页面如何对进行所查询出的结果再分页
- JAVA实践-mybatis中junit查询无结果返回,数据库查询有数据
- 基于HTML5 Bootstrap搭建的后台模板,分页,模糊查询已经全部JS实现,无需编码,嵌入数据即可开发,内置8款皮肤,欧美风格,非常好用!
- Querying Microsoft SQL Server 2012 读书笔记:查询和管理XML数据 1 -使用FOR XML返回XML结果集
- awt可视化界面上传数据到mysql,jsp通过jdbc方式查询数据库,并将结果打印在网页上