1.创建数据库表,以oracle中创建users数据表为例并添加数据
-- 用户信息表
create table users(
u_id integer primary key, -- 用户id
u_name varchar2(30) not null unique, --用户姓名
u_password varchar2(16) not null, --用户密码
u_phone varchar2(11) unique, --用户手机号
u_email varchar2(26) unique, --用户邮箱
u_jurisdiction varchar2(40) not null --用户权限
);
--用户表自动增长序列
create sequence sequence_uid start with 1 increment by 1;
-- 用户表id触发器
create or replace trigger tr_users
before insert on users
for each row
begin
select sequence_uid.nextval into :new.u_id from dual;
end;
insert into users(u_name,u_password,u_phone,u_email,u_jurisdiction)
values('admin','admin','17684542','[email protected]','user:amdin');
commit;
insert into users(u_name,u_password,u_phone,u_email,u_jurisdiction)
values('张三','user','123465888','[email protected]','user:update');
commit;
insert into users(u_name,u_password,u_phone,u_email,u_jurisdiction)
values('李四','user','163746734','[email protected]','user:update');
commit;
insert into users(u_name,u_password,u_phone,u_email,u_jurisdiction)
values('qq','user','454545454','[email protected]','user:update');
commit;
insert into users(u_name,u_password,u_phone,u_email,u_jurisdiction)
values('ww','user','13435454','[email protected]','user:update');
commit;
insert into users(u_name,u_password,u_phone,u_email,u_jurisdiction)
values('ee','user','767657567','[email protected]','user:update');
commit;
insert into users(u_name,u_password,u_phone,u_email,u_jurisdiction)
values('tt','user','8989898','[email protected]','user:update');
commit;
2.修改pom.xml文件,引入pagehelper依赖
<!-- pagehelper分页插件 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.4</version>
</dependency>
<!-- 分页插件 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>
3.打开application.properties,配置分页
#分页插件
pagehelper.helper-dialect=oracle #指定数据库,对应什么数据库就写什么,没写会自动检测
pagehelper.params=count=countSql
pagehelper.reasonable=true
pagehelper.support-methods-arguments=true
4.直接用mybatis逆向工程插件创建相应的方法,具体可看之前的博客SpringBoot使用mybatis插件自动创建逆向工程
5.添加一个RequestMapping
@RequestMapping("searchuser")
public String searchUser(Model model,@RequestParam(value="pageNum",defaultValue="1")Integer pageNum) {
//查询之前调用startPage,就是每页显示多少条数据
PageHelper.startPage(pageNum, 3);
//拿到所有用户数据
List<Users> list = userServiceImp.queryAllUsers();
//将查询到的数据放入pagehepler中
PageInfo<Users> pageInfo = new PageInfo<Users>(list);
// 将查询到的数据存到返回
model.addAttribute("pageInfo", pageInfo);
return "userfrom";
}
6.在src/main/resources的templates下新建一个userfrom.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>所有用户</title>
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css" target="_blank" rel="external nofollow" >
<script src="https://cdn.staticfile.org/jquery/3.1.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
<div align="center">
<table id="mytable"
class="table table-striped table-hover table-condensed table-bordered">
<thead>
<tr>
<th>id</th>
<th>姓名</th>
<th>手机号</th>
<th>邮箱</th>
<th>权限</th>
</tr>
</thead>
<tbody>
<tr th:each="users:${pageInfo.list}">
<td th:text="${users.u_id}"></td>
<td th:text="${users.u_name}"></td>
<td th:text="${users._phone}"></td>
<td th:text="${users.u_email}"></td>
<td th:text="${users.u_jurisdiction}"></td>
</tr>
</tbody>
</table>
<p>
当前 <span th:text="${pageInfo.pageNum}"></span> 页,总 <span
th:text="${pageInfo.pages}"></span> 页,共 <span
th:text="${pageInfo.total}"></span> 条记录
</p>
<ul class="pagination">
<li><a th:href="@{/user/searchuser}" target="_blank" rel="external nofollow" >第一页</a> </li>
<li><a th:href="@{/user/searchuser(pageNum=${pageInfo.hasPreviousPage}?${pageInfo.prePage}:1)}" target="_blank" rel="external nofollow" >上一页</a></li>
<li><a th:href="@{/user/searchuser(pageNum=${pageInfo.hasNextPage}?${pageInfo.nextPage}:${pageInfo.pages})}" target="_blank" rel="external nofollow" >下一页</a></li>
<li><a th:href="@{/user/searchuser(pageNum=${pageInfo.pages})}" target="_blank" rel="external nofollow" >最后一页</a></li>
</ul>
</div>
</body>
</html>
7.启动项目,浏览器输入http://localhost:8089/user/searchuser(成功)
