ssm实现分页查询的实例 程序员文章站 2024-04-03 18:48:52 ssm整合实现分页查询 一、通过limit查询语句实现分页,并展示 1.mapper.xml配置 ssm整合实现分页查询 一、通过limit查询语句实现分页,并展示 1.mapper.xml配置 <select id="selectusersbypage" parametertype="int" resultmap="usermap"> select * number from user limit #{page},10 </select> 查询user表,从第page项开始,每次返回10条数据 2.index.jsp <html> <head> <title>page</title> <link rel="stylesheet" type="text/css" href="css/index.css" rel="external nofollow" > </head> <body> <div style="width: 100%;margin-top:20px;"> <table> <tr style="background-color: #f5f5f5;"> <th>username</th> <th>password</th> <th>sex</th> <th>email</th> <th>createtime</th> <th>updatetime</th> </tr> <div id = "show_data"> <c:choose> <c:when test="${ulist != null}"> <c:foreach items="${ulist}" var="u"> <tr> <td>${u.username}</td> <td>${u.password}</td> <td>${u.sex}</td> <td>${u.email}</td> <td><fmt:formatdate value="${u.create_time}" type="date"/></td> <td><fmt:formatdate value="${u.update_time}" type="date"/></td> </tr> </c:foreach> </c:when> <c:otherwise> <tr> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> </c:otherwise> </c:choose> </div> </table> <div class="page"> <div class="page_cell">首页</div> <div class="page_cell" ip="up_page">上一页</div> <div style="float: left;margin: 2px"><%=session.getattribute("page")%>/${ulist[0].number}</div> <div class="page_cell" onclick="next_page(<%=session.getattribute("page")%>)">下一页</div> <div class="page_cell">末页</div> </div> </div> </body> <script type="text/javascript" src="js/index.js"></script> <script type="text/javascript" src="js/jquery.js"></script> </html> 3.css body{ width: 100%; margin: 0; } table{ border:1px solid red; text-align: center; margin: auto; border-collapse: collapse; } tr{ border: 1px solid #ddd } th{ width: 150px; font-weight: 700; height: 36px; } td{ height: 36px; } .page{ margin: auto; width: 300px; text-align: center; margin-top: 10px; } .page_cell{ float: left; width: 50px; border:1px solid #f5f5f5; margin:2px; cursor: pointer; } .page_cell:hover{ -webkit-box-shadow: #777 0px 0px 1px; } 4.js /** * 下一页 */ function next_page(page){ var data = { "page":page }; $.ajax({ type:"post", url:"/rolecontrol/next_page.do", data:json.stringify(data), datatype:"json", contenttype:"application/json", success:function(data){ var show_data = document.getelementbyid("show_data") show_data.innerhtml = " "; for(i=0; i<data.length; i++){ //.....异步刷新页面 } }, error:function(data){ alert("网络连接错误"); } }); } 5.控制器 @requestmapping("/index.do") public string index(modelmap map, httpsession session){ session.setattribute("page",1); list<user> ulist = userservice.selectusersbypage(0); map.put("ulist",ulist); return "index"; } /** * 用户信息分页查询 * @param params * @return */ @requestmapping(value = "/next_page.do",method = requestmethod.post) @responsebody public string getusersbypage(@requestbody jsonobject params){ // map<string,string> paramsmap = json.parseobject(params,new typereference<map<string,string>>(){}); system.out.println(params.get("page").tostring()); list<user> ulist = userservice.selectusersbypage(integer.parseint(params.get("page").tostring())*10); return json.tojsonstring(ulist); } 问题:在ajax传递json对象的时候,发生了415错误(未知媒体错误) 原因: <mvc:annotation-driven />会自动注册defaultannotationhandlermapping和annotationmethodhandleradapter两个bean ,annotationmethodhandleradapter将会初始化7个转换器,可以通过调用annotationmethodhandleradapter的getmessageconverts()方法来获取转换器的一个集合 list<httpmessageconverter> bytearrayhttpmessageconverter stringhttpmessageconverter resourcehttpmessageconverter sourcehttpmessageconverter xmlawareformhttpmessageconverter jaxb2rootelementhttpmessageconverter mappingjacksonhttpmessageconverter 解决:对于json的解析就是通过mappingjacksonhttpmessageconverter转换器完成的。所以就需要加入jackson依赖包: <dependency> <groupid>com.fasterxml.jackson.core</groupid> <artifactid>jackson-core</artifactid> <version>2.5.2</version> </dependency> <dependency> <groupid>com.fasterxml.jackson.core</groupid> <artifactid>jackson-databind</artifactid> <version>2.5.2</version> </dependency> 加了依赖包后问题就完美解决了,运行结果如下: 以上查询的数据是通过存储过程批量插入的: begin declare pid int; set pid = 10000; while pid>0 do insert into user values (pid,'pw','sex','email',now(),now()); set pid = pid-1; end while; end 这篇ssm实现分页查询的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。 上一篇: PHP错误处理函数 下一篇: 安装织梦数据库设定,出现数据库连接失败有关问题 推荐阅读 php简单实现数组分页的方法 Java实现的读取资源文件工具类ResourcesUtil实例【可动态更改值的内容】 PHP实现的简单分页类及用法示例 ssm实现分页查询的实例 php基于curl实现的股票信息查询类实例 Java编程小实例—数字时钟的实现代码示例 Java实现的文件上传下载工具类完整实例【上传文件自动命名】 PHP查询并删除数据库多列重复数据的方法(利用数组函数实现) PHP实现的构造sql语句类实例 PHP使用Pthread实现的多线程操作实例,pthread实例_PHP教程