因为需要对查询的所有数据分页展示,所以在项目中使用到了PageHelper分页插件。对于分页插件不是很了解,只是知道分页插件在SQL语句执行前会拦截我们的SQL语句,在需要分页的SQL语句后拼接上limit 1,10;字符串,如下图所示:
项目运行后,在浏览器访问分页的接口,出现了以下错误信息:
接着后端控制台报错,错误信息如下:
错误出现在mapper的xml文件中,我的SQL分页查询语法有错,让我检查SQL语句
我习惯在mapper.xml文件的SQL语句结尾加上分号结束(如图1所示),没想到加出了问题,因为PageHelper插件会在查询语句后拼接上limit,这样就会出现了以下错误的SQL语法
select v.*,u.face_image as face_image,u.nickname as nickname from videos as v left join users as u on v.user_id = u.id where 1=1 and v.status = 1 order by create_time desc;limit 1,10;
修改完重新运行项目,可以成功访问接口
3.问题总结还是没有对pageHelper分页插件原理去深入了解,不够细心导致了错误



