SpringBoot+Mybatis开发阶段总结
背景
最近的项目使用SpringBoot进行开发,虽然以前使用过SpringBoot,但是框架不是我搭建的。新到一家公司,使用的技术和框架都和之前的略有不同。
开发的过程中还是有不少的坑和古怪的错误,现在记录下来,方便日后回顾。
问题一
Mybatis分页插件失效。Mybatis有一款特别方便的分页插件:PageHelper。主页在此:https://github.com/pagehelper/Mybatis-PageHelper
项目使用的是Oracle数据,用Mybatis维护代码和数据库之间的关系。之前使用PageHelper一直没有出现任何问题。经过查阅资料,发现了问题:PageHelper
在SSM框架下和在SpringBoot框架下的构建方式不一样。
SSM框架的PageHelper使用方式:
pom.xml:
“` 全局的jar包版本定义
User.java POJO类定义:
package com.ylz.pojo; public class UserPojo { private String userName;//用户名 private String userNumber; //帐号 private String userPwd;//密码 public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getUserPwd() { return userPwd; } public void setUserPwd(String password) { this.userPwd = password; } public String getUserNumber() { return userNumber; } public void setUserNumber(String userNumber) { this.userNumber = userNumber; } }
service层接口:
public interface UserService {
String selectAll(UserPojo userPojo);
}
#### service层实现:
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userDao;
@Autowired
private HttpSession session;
@Override
public String selectAll(UserPojo userPojo) {
PageHelper.startPage(userPojo.getPage().getPageNo(), userPojo.getPage().getPageSize());
List<UserPojo> users =userDao.selectUserById(userPojo);
PageInfo page = new PageInfo<>(users);
return ReturnJsonFormatUntil.json(true, AnalysisJson.parseListWithGson(page));
}
}
预期结果
前端传入Page参数pageNo,pageSize,后端自动根据pageNo和pageSize进行分页
实际结果
查询出数据库中所有的数据