今天小编教大家如何通过ssm框架+PageHelper插件实现分页查询功能,首先大家需要新建一个maven工程引入jar包,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
通过搭建ssm框架,然后通过mybatis的分页插件pagehelp进行分页查询。
源码:https://gitee.com/smfx1314/pagehelper
看一下项目结构:
首先创建一个maven工程,pom中引入相关jar包
org.springframeworkspring-core4.3.2.RELEASE org.springframeworkspring-aop4.3.2.RELEASE org.springframeworkspring-aspects4.3.2.RELEASE org.springframeworkspring-beans4.3.2.RELEASE org.springframeworkspring-context4.3.2.RELEASE org.springframeworkspring-expression4.3.2.RELEASE org.springframeworkspring-jdbc4.3.2.RELEASE org.springframeworkspring-test4.3.2.RELEASE org.springframeworkspring-tx4.3.2.RELEASE org.springframeworkspring-web4.3.2.RELEASE org.springframeworkspring-webmvc4.3.2.RELEASE org.mybatismybatis-spring1.3.0 org.mybatismybatis3.4.4 commons-iocommons-io2.4 org.apache.commonscommons-lang33.4 commons-loggingcommons-logging1.1.1 org.apache.logging.log4jlog4j-core2.9.1 org.slf4jslf4j-log4j121.7.21test aopallianceaopalliance1.0 mysqlmysql-connector-java5.1.38 com.mchangec3p00.9.5.2 javax.servletjstl1.2 javax.servletjavax.servlet-api3.1.0provided javax.servlet.jspjavax.servlet.jsp-api2.2.1provided taglibsstandard1.1.2 com.github.pagehelperpagehelper5.1.2 org.apache.maven.pluginsmaven-compiler-plugin3.6.1 utf-8 org.apache.tomcat.maventomcat7-maven-plugin2.2 UTF-8
pom.xml中引入page分页的jar包
com.github.pagehelperpagehelper5.1.2
jar包这里就引入完了。下面引入配置文件
applicationContext.xml
<!-- 扫描注解的包 --><!-- 配置数据库 --><!-- 加载配置文件 --> <!-- 配置sqlSessionFactory, 并将数据源注入 --> <!-- 引入数据源 --><!--载入mybatis配置文件--><!--载入配置mapper映射的xml--><!-- 配置映射接口 --> <!-- 配置声明式事务 --> <!-- 配置aop -->
springmvc.xml
<!-- 扫描注解的包 --><!-- 开启注解 --><!--静态资源访问--><!-- 配置视图解析器 -->
mybatis-config.xml
<!-- 引入 pageHelper插件 --><!--注意这里要写成PageInterceptor, 5.0之前的版本都是写PageHelper, 5.0之后要换成PageInterceptor--> <!--reasonable:分页合理化参数,默认值为false。 当该参数设置为 true 时,pageNumpages(超过总数时),会查询最后一页。 默认false 时,直接根据参数进行查询。-->
以上你也可以直接配置的applicationContext中。
web.xml
pagehelper index.jsp org.springframework.web.context.ContextLoaderListener contextConfigLocationclasspath:applicationContext.xml springmvcorg.springframework.web.servlet.DispatcherServlet contextConfigLocationclasspath:springmvc.xml1 springmvc/ encodingFilterorg.springframework.web.filter.CharacterEncodingFilter encodingUTF-8 encodingFilter/*
controller:
package com.jiangfx.controller; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.jiangfx.entity.User; import com.jiangfx.service.UserService; @Controller public class UserController { @Autowired private UserService pageService; /** * 分页查询 */ @RequestMapping(value="/list",method=RequestMethod.GET) public String pageList(ModelMap map,@RequestParam(defaultValue="1",required=true,value="pageNo") Integer pageNo){ Integer pageSize=4;//每页显示记录数 //分页查询 PageHelper.startPage(pageNo, pageSize); List userList = pageService.list();//获取所有用户信息 PageInfo pageInfo=new PageInfo(userList); map.addAttribute("pageInfo", pageInfo); return "list"; } }
serviceImpl:接口自己定义,这里就不贴了
package com.jiangfx.service.impl; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.jiangfx.entity.User; import com.jiangfx.mapper.UserMapper; import com.jiangfx.service.UserService; @Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; /** * 查询所有用户 * @return */ @Override public List list() { return userMapper.getAllUser(); } }
entity:
package com.jiangfx.entity; public class User { private Integer id; private String username; private String sex; private String city; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getCity() { return city; } public void setCity(String city) { this.city = city; } @Override public String toString() { return "User [i<strong style="color:transparent">来源gaodai#ma#com搞@@代~&码网</strong>d=" + id + ", username=" + username + ", sex=" + sex + ", city=" + city + "]"; } }
mapper
package com.jiangfx.mapper; import java.util.List; import com.jiangfx.entity.User; public interface UserMapper { //查询所有用户 List getAllUser(); }
mapper.xml
<!-- 查询博客 --> select * from user
下面是jsp
index.jsp
<title>Insert title here</title> 分页查询
返回list
list.jsp
<title>Insert title here</title> <table width="200" border="1"> <tr> <th scope="col">ID</th><th scope="col">姓名</th><th scope="col">性别</th><th scope="col">城市</th></tr> <tr> <td>${user.id}</td><td>${user.username}</td><td>${user.sex}</td><td>${user.city}</td></tr></table><p>当前 ${pageInfo.pageNum }页,总${pageInfo.pages } 页,总 ${pageInfo.total } 条记录</p></div></p>第一页 上一页 下一页最后页
访问localhost:8080/pagehelper
点击分页查询结果:
以上就是ssm框架+PageHelper实现分页查询功能的详细内容,更多关于ssm PageHelper分页查询的资料请关注gaodaima搞代码网其它相关文章!
以上就是ssm框架+PageHelper插件实现分页查询功能的详细内容,更多请关注gaodaima搞代码网其它相关文章!