接上篇Spring boot+Mybatis+Thymeleaf简单的CRUDdemo【一】
Spring boot+Mybatis+Thymeleaf简单的CRUDdemo【一】
实现分页和搜索。
废话不多说直接上代码:
使用Mybatis的分页插件pageHelper实现分页,通俗简单。首先在pom.xml文件中引入pagehelper的依赖。
<!-- 分页查询插件 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.12</version>
</dependency>
controller代码,不明白的参见博主上篇博客
//分页查询获取所有用户信息
@RequestMapping("/userList")
public String userLsit(@RequestParam(defaultValue="1") int pageNum,
@RequestParam(defaultValue="4")int pageSize,Model modle){
PageHelper.startPage(pageNum, pageSize);
PageInfo<Users> users = new PageInfo<Users>(userService.getAll());
modle.addAttribute("users", users);
return "userList";
}
userList.html
<table border="1" width="500px" align="center"><!-- 设置表格边框为1,宽度为500px 居中 -->
<caption>用户列表</caption>
<thead>
<tr>
<td>id</td>
<td>名字</td>
<td>年龄</td>
<td>操作</td>
</tr>
<!-- 一定要使用.list 因为users中list里的信息才是数据库中的数据 -->
<tr th:each="user:${users.list}"> <!-- 对元素集合users进行取别名user -->
<td th:text="${user.id}"></td>
<td th:text="${user.name}"></td>
<td th:text="${user.age}"></td>
<td>
<a href="delete.html" th:href="@{/del(id=${user.id})}">删除</a>
<a href="update.html" th:href="@{/upd(id=${user.id})}">修改</a>
<!-- <a href="serach.html" th:href="@{/serach(id=${user.id})}">查找</a> -->
</td>
</tr>
<tr>
<td colspan="4" align="center">
<a href="add.html" th:href="@{/addUser}">添加</a>
</td>
</tr>
</thead>
</table>
此时,分页就实现了。接下来是搜索功能实现。
UserMapper.java
//模糊查询信息
public List<Users> keySearch(String name);
UsersService.java
//模糊查询
List<Users> keySearch(String name);
UserServiceImpl.java
//模糊查询
@Override
public List<Users> keySearch(String name) {
// TODO Auto-generated method stub
return userMapper.keySearch(name);
}
UserMapper.xml
<!-- 模糊查询 -->
<select id="keySearch" resultType="users">
select * from users where name like concat('%',#{name},'%')
</select>
最后UserController
//模糊查询
@RequestMapping("/keySearch")
public String keySearch(Model model,HttpServletRequest request) {
//获取页面搜索框的值
String name=request.getParameter("name");
//数据库中查询
List<Users> users = userService.keySearch(name);
//结果进行映射
model.addAttribute("users", users);
System.out.println(users);
return "keySearch";
}
keySearch.html展示
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table border="1" width="500px" align="center"><!-- 设置表格边框为1,宽度为500px 居中 -->
<caption>用户列表</caption>
<thead>
<tr>
<td>id</td>
<td>名字</td>
<td>年龄</td>
<td>操作</td>
</tr>
<tr th:each="user:${users}"> <!-- 对元素集合users进行取别名user -->
<td th:text="${user.id}"></td>
<td th:text="${user.name}"></td>
<td th:text="${user.age}"></td>
<td>
<a href="delete.html" th:href="@{/del(id=${user.id})}">删除</a>
<a href="update.html" th:href="@{/upd(id=${user.id})}">修改</a>
</td>
</tr>
<tr>
<td colspan="4" align="center">
<a href="add.html" th:href="@{/addUser}">添加</a>
</td>
</tr>
</thead>
</table>
</body>
</html>
运行截图:
只是实现了基本功能,页面并没有优化,可以自行修改优化。持续更新中,欢迎留言交流。