
一、问题描述
遇到了一个报错
com.github.pagehelper.PageException: 处理排序失败: net.sf.jsqlparser.JSQLParserException
Caused by: net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "is" "IS"
at line 28, column 21.
Was expecting one of:
"."
";"
"AND"
"CONNECT"
"EXCEPT"
"FOR"
"GROUP"
"HAVING"
"INTERSECT"
"MINUS"
"ORDER"
"START"
"UNION"
<EOF>
通过报错,我们简单可以看出是
pagehelper在处理sql语句时,sql中包含了不支持的语句
二、问题排查
- 先看java代码
代码里确实用了pagehelper的排序
Page page = PageHelper.startPage(pageNum, pageSize, orderString);
- 再看sql
因为sql里面使用了
is,pagehelper排序不支持这个关键字,所以就报错了
where is_hide is true
三、问题解决
对于我这个问题,把is换成=就行了
还有别的情况,使用了一些关键字,不在下面之中,也会报错
Was expecting one of:
"."
";"
"AND"
"CONNECT"
"EXCEPT"
"FOR"
"GROUP"
"HAVING"
"INTERSECT"
"MINUS"
"ORDER"
"START"
"UNION"
<EOF>
报错里面都有提示,可以根据提示判断具体哪个关键词有问题
Encountered unexpected token: "is" "IS"
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




