Spring Boot+mybatis+thymeleaf集成通用mapper分页查询
来源:互联网 发布:淘宝网的性用品有用吗 编辑:程序博客网 时间:2024/04/28 06:33
spring boot 1.4.2.RELEASE+Thymeleaf+mybatis 集成通用maper,与分页插件:
- spring boot 142RELEASEThymeleafmybatis 集成通用maper与分页插件
- pomxml
- UserPojo
- UserService
- UserController
- 前台模板页
pom.xml
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.2.RELEASE</version> <relativePath /> <!-- lookup parent from repository --> </parent> <properties> <java.version>1.8</java.version> <!-- 依赖版本 --> <mybatis.version>3.4.0</mybatis.version> <mybatis.spring.version>1.3.0</mybatis.spring.version> <mapper.version>3.3.9</mapper.version> <pagehelper.version>4.1.6</pagehelper.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.datatype</groupId> <artifactId>jackson-datatype-joda</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.module</groupId> <artifactId>jackson-module-parameter-names</artifactId> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.11</version> </dependency> <!--Mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>${mybatis.spring.version}</version> </dependency> <!-- Mybatis Generator --> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.2</version> <scope>compile</scope> <optional>true</optional> </dependency> <!--分页插件 --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>${pagehelper.version}</version> </dependency> <!--通用Mapper --> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>${mapper.version}</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>springloaded</artifactId> <version>1.2.5.RELEASE</version> </dependency> </dependencies> </plugin> </plugins> </build>
UserPojo
@Table(name="user")public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String username; private Date birthday; private String email; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public Date getBirthday() { return birthday; } public void setBirthday(Date birthday) { this.birthday = birthday; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; }}
UserService
@Service@Transactionalpublic class UserService { @Autowired private UserMapper userMapper; @Transactional(readOnly = true) public PageInfo<User> findAll(String username, Date birthday, Integer page, Integer pageSize) { PageHelper.startPage(page, pageSize); Example example = new Example(User.class); if (!StringUtils.isEmpty(username)) { example.createCriteria().andEqualTo("username", username); } if (birthday != null) { example.createCriteria().andEqualTo("birthday", birthday); } List<User> users = userMapper.selectByExample(example); return new PageInfo<>(users); }}
UserController
@Controllerpublic class UserController { @Autowired private UserService userService; @RequestMapping("/user") public String index(Model model, @RequestParam(required = false) String username,@RequestParam(required = false) Date birthday, @RequestParam(defaultValue = "1") Integer pageNum, @RequestParam(defaultValue = "3") Integer pageSize) { PageInfo<User> pageInfo = userService.findAll(username, birthday, pageNum, pageSize); //获得当前页 model.addAttribute("pageNum", pageInfo.getPageNum()); //获得一页显示的条数 model.addAttribute("pageSize", pageInfo.getPageSize()); //是否是第一页 model.addAttribute("isFirstPage", pageInfo.isIsFirstPage()); //获得总页数 model.addAttribute("totalPages", pageInfo.getPages()); //是否是最后一页 model.addAttribute("isLastPage", pageInfo.isIsLastPage()); model.addAttribute("users", pageInfo.getList()); return "index"; }}
前台模板页
<table class="table table-hover" style="border-collapse: 0" width="50%"> <thead> <tr> <th>id</th> <th>username</th> <th>birthday</th> <th>email</th> </tr> </thead> <tr th:each="user : ${users}"> <th th:text="${user.id}"></th> <th th:text="${user.username}"></th> <th th:text="${#dates.format(user.birthday, 'yyyy-MM-dd')}"></th> <th th:text="${user.email}"></th> </tr> </table> <nav> <ul class="pagination"> <li><a href="">«</a></li> <li> <a th:if="${not isFirstPage}" th:href="@{${'/user'}(pageNum=${pageNum-1},pageSize=${pageSize})}">Previous</a> <a th:if="${isFirstPagee}" href="javascript:void(0);">Previous</a> </li> <li th:each="pageNo : ${#numbers.sequence(1, totalPages)}"> <a th:if="${pageNum eq pageNo}" href="javascript:void(0);"> <span th:text="${pageNo}"></span> </a> <a th:if="${not (pageNum eq pageNo)}" th:href="@{${'/user'}(pageNum=${pageNo},size=${pageSize})}"> <span th:text="${pageNo}"></span> </a> </li> <li> <a th:if="${not isLastPage}" th:href="@{${'/user'}(pageNum=${pageNum+1},size=${pageSize})}">Next</a> <a th:if="${isLastPage}" href="javascript:void(0);">Next</a> </li> <li><a href="#">»</a></li> </ul> </nav>
1 0
- Spring Boot+mybatis+thymeleaf集成通用mapper分页查询
- Spring Boot MyBatis 通用Mapper插件集成
- Spring Boot MyBatis 通用Mapper插件集成
- spring boot 1.4.2.RELEASE+Thymeleaf+mybatis 集成通用maper,与分页插件:
- MyBatis基于Spring-boot集成通用Mapper以及pagehelper分页插件(含源码下载)
- spring boot集成mybatis-generator-maven-plugin和通用mapper
- 关于Spring Boot集成MyBatis、通用Mapper、PageHelper
- Spring集成MyBatis 通用Mapper以及 pagehelper分页插件
- Maven构建Spring Boot+mybatis+通用Mapper
- 【SSM 8】spring集成Mybatis通用Mapper
- spring-boot集成thymeleaf
- Spring Boot集成MyBatis与分页插件
- Spring Boot集成MyBatis与分页插件
- spring boot和mybatis集成分页插件
- Thymeleaf系列一 Spring boot 集成Thymeleaf
- spring boot集成mybatis无法扫描mapper文件(坑)
- Spring Boot与Thymeleaf集成
- spring boot+mybatis+thymeleaf 练习
- ubuntu安装nginx
- java选修复习随
- 三星手机拍照强制切换到横屏及照片旋转问题
- Linux C Socket常用函数详解
- 【C#】—数组
- Spring Boot+mybatis+thymeleaf集成通用mapper分页查询
- ubuntu中文字体问题
- 环境变量
- 148. Sort List
- 【Java】Java中,String、StringBuffer和StringBuilder的区别
- __weak及弱引用简记
- Reorder the Books HDU - 5500
- docker使用nginx镜像运行
- 判断链表中有环