Springboot整合MyBatisPlus对数据库进行操作
UserService.java
package com.lvhang.admin.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lvhang.admin.bean.User1;
public interface UserService extends IService<User1> {
}
UserMapper.java
@Mapper
public interface UserMapper extends BaseMapper<User1> {
}
UserServiceImpl.java
package com.lvhang.admin.service.Impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.lvhang.admin.bean.User1;
import com.lvhang.admin.mapper.UserMapper;
import com.lvhang.admin.service.UserService;
import org.springframework.stereotype.Service;
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User1> implements UserService {
}
TableController.java
@GetMapping("/dynamic_table")
public String dynamic_table(Model model){
//从数据库中查出User1表中的数据进行展示
List<User1> user1List = userService.list();
model.addAttribute("users",user1List);
return "table/dynamic_table";
}
分页功能的实现
引入分页插件
MybatisConfig.java
@Configuration
public class MybatisConfig {
// 最新版
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
return interceptor;
}
}
TableController.java
@GetMapping("/dynamic_table")
public String dynamic_table(@RequestParam(value = "pn", defaultValue = "1") Integer pn, Model model){
//从数据库中查出User1表中的数据进行展示
List<User1> user1List = userService.list();
model.addAttribute("users",user1List);
//分页
Page<User1> userPage = new Page<>(pn,2);
Page<User1> page = userService.page(userPage, null);
long current = page.getCurrent();
long pages = page.getPages();
long total = page.getTotal();
List<User1> records = page.getRecords();
model.addAttribute("page",page);
return "table/dynamic_table";
}
html
<div class="row-fluid">
<div class="span6">
<div class="dataTables_info" id="dynamic-table_info">
当前第 [[${page.current}]] 页 总计 [[${page.pages}]]页 共[[${page.total}]]条记录
</div>
</div>
<div class="span6">
<div class="dataTables_paginate paging_bootstrap pagination">
<ul>
<li class="prev disabled"><a href="#">← 前一页</a></li>
<li th:class="${num == page.current?'active':''}"
th:each="num:${#numbers.sequence(1,page.pages)}">
<a th:href="@{/dynamic_table(pn=${num})}">[[${num}]]</a>
</li>
<li class="next disabled"><a href="#">下一页 → </a></li>
</ul>
</div>
</div>
</div>