控制层对应的sql语句为:
@RequestMapping("/findBySql2")
public String findBySql2(Integer pid,Model model){
String sql = "select * from item_category where isDelete=0 and pid="+pid+ "order by id";
Pager<ItemCategory> pagers = itemCategoryService.findBySqlRerturnEntity(sql);
model.addAttribute("pagers",pagers);
return "itemCategory/itemCategory2";
}
控制台输出为:
2021-05-11 15:40:29,734 [http-apr-8080-exec-2] DEBUG [com.javapandeng.mapper.ItemCategoryMapper.findBySqlRerturnEntity] - ==> Preparing: select * from item_category where isDelete=0 and pid=69order by id limit ?,?
2021-05-11 15:40:29,734 [http-apr-8080-exec-2] DEBUG [com.javapandeng.mapper.ItemCategoryMapper.findBySqlRerturnEntity] - ==> Parameters: 0(Integer), 15(Integer)
2021-05-11 15:40:29,743 [http-apr-8080-exec-2] DEBUG [org.mybatis.spring.SqlSessionUtils] - Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@7316f7d0]
解决方法
观察控制台输出可知:pid=69 和order之间没有空格
在sql语句中加空格即可解决
@RequestMapping("/findBySql2")
public String findBySql2(Integer pid,Model model){
String sql = "select * from item_category where isDelete=0 and pid="+pid+ " order by id";
Pager<ItemCategory> pagers = itemCategoryService.findBySqlRerturnEntity(sql);
model.addAttribute("pagers",pagers);
return "itemCategory/itemCategory2";
}