caused by: net.sf.jsqlparser.parser.parseexception

这篇具有很好参考价值的文章主要介绍了caused by: net.sf.jsqlparser.parser.parseexception。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

原因

net.sf.jsqlparser.parser.ParseException: Encountered unexpected token 错误通常表示 SQLParser 在解析 SQL 语句时遇到了一个意外的标记。这通常是由以下原因导致的:

  1. SQL 语法错误:SQLParser 遵循标准的 SQL 语法规则,如果您的 SQL 语句存在语法错误,例如拼写错误、缺少关键字、不正确的标点符号等,都会导致解析错误。请仔细检查您的 SQL 语句并确保它符合正确的语法。

  2. 不支持的 SQL 特性:SQLParser 可能不支持某些特定的 SQL 语法或功能。例如,某些高级的 SQL 特性、数据库特定的扩展、非标准的 SQL 表达式等可能无法被完全解析。请查阅 SQLParser 的文档以了解其支持的功能和限制。

  3. 解析器版本不匹配:如果您使用的 SQL 语句是针对不同版本的 SQLParser 编写的,可能会导致解析错误。请确保使用的 SQLParser 版本与您的代码兼容,并且适用于您正在使用的 SQL 语法版本。

解决 

  1. 仔细检查 SQL 语句:检查您的 SQL 语句是否存在拼写错误、缺少关键字、不正确的标点符号等语法错误。确保 SQL 语句符合正确的语法规则。

  2. 使用支持的 SQL 特性:SQLParser 可能不支持某些高级的 SQL 特性或数据库特定的扩展。请查阅 SQLParser 的文档以了解其所支持的功能和限制,并相应地调整您的 SQL 语句。

  3. 更新 SQLParser 版本:如果您使用的 SQLParser 版本较旧或与您的 SQL 语句不兼容,尝试更新到最新的版本。新版本通常会修复一些已知的问题和错误。

  4. 查阅解析器错误消息:解析器错误消息可能会提供更详细的信息,帮助您定位到具体的错误位置。查看错误消息并根据提示来调整您的 SQL 语句。

  5. 提交 Issue 或寻求帮助:如果您经过仔细排查后仍无法解决问题,可以考虑访问 SQLParser 的官方网站或仓库,提交 Issue 并寻求帮助。开发者社区可能能够提供具体的解决方案或指导。

我的问题:

caused by: net.sf.jsqlparser.parser.parseexception,SQL,Java,java,服务器,数据库

Mybatis-plus官网说是框架中使用到了多租户功能,Mybatis-plus 会进行数据权限的过滤,但是有些接口,其实并不想被多租户过滤,所以要对该条sql,进行租户放行。关于这块,Mybatis-plus官网给出了SqlParserFilter  sql 解析过滤器说明,当然对这部分感兴趣的小伙伴们,可以去Mybatis-plus官网查看相关源码,我这里就不在具体说明了。 

参考Mybatis-plus官网,在Mapper层接口方法上 加入注解  

@SqlParser(filter=true)

注意:说明:如果Mybatis-plus版本是3.1.1至3.4.0以下版本可以直接 添加此注解 即可,3.1.1以下版本需要添加如下配置文章来源地址https://www.toymoban.com/news/detail-721970.html

# 开启 SQL 解析缓存注解生效
mybatis-plus:
  global-config:
    sql-parser-cache: true

到了这里,关于caused by: net.sf.jsqlparser.parser.parseexception的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 解决问题Caused by: java.net.UnknownHostException

    在Java中,\\\"java.net.UnknownHostException\\\" 异常表示无法解析主机名。这意味着你尝试连接的主机名无法解析为 IP 地址。可能的原因有: 主机名错误,请确保输入的主机名正确。 网络连接问题,请检查网络是否连接正常。 DNS 问题,请检查 DNS 服务器是否可以正常解析域名。 如果你

    2024年02月11日
    浏览(46)
  • Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateNotYetValidException:

    生命就像人家的魔法书,涂涂改改又是一年📖 原因 解决办法 完整报错: 在执行sqoop脚本导数据的时候出现 Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateNotYetValidException: NotBefore: Tue Oct 11 17:24:18 CST 2022 报错,证书不合法,解决办法是jdbc连接MySQL时不使用ssl协议,

    2024年02月15日
    浏览(46)
  • Caused by: java.net.BindException: Address already in use: bind

    一,换端口号 这个比较简单,就是把tomcat的端口号改一下,换一个没用的端口号就行了。 1,找到找到server.xml文件 去tomcat的安装目录下的conf文件夹就可以找到 2,修改端口号 找到Connector标签,红方框中8080位置就是端口号,修改这个端口号即可,之后重启服务器 二,杀掉占

    2024年02月11日
    浏览(49)
  • Caused by: javax.net.ssl.SSLException: Received fatal alert: protocol_version

        at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1575)     at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:854)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)     

    2024年02月06日
    浏览(53)
  • Gradle编译时报错 Caused by: javax.net.ssl.SSLException: No PSK available. Unable to resume.

    Gradle编译时报错 Caused by: javax.net.ssl.SSLException: No PSK available. Unable to resume. 这是 JDK 11 的一个bug, 升级到 JDK 11.0.3+ 可以解决 bug: https://bugs.openjdk.java.net/browse/JDK-8213202 不想升级的话可以手动修改 $JAVA_HOME/conf/security/java.security 文件, 找到 jdk.tls.disabledAlgorithms=SSLv3 所在的那一行,在行

    2024年02月12日
    浏览(96)
  • ES启动报错:Caused by: java.net.SocketException: No buffer space available (maximum connections reached?)

    线上服务的es突然挂掉导致网站无法正常访问,看了下是es服务停止了,于是重启后出现了如下报错,对于报错信息的重点关注: Caused by: java.net.SocketException: No buffer space available (maximum connections reached?): connect 看报错信息是连接数太多,耗尽了某种资源。 查看当前所有的连接,

    2024年02月07日
    浏览(44)
  • java 连接mysql,出现 Caused by: javax.net.ssl.SSLException: Received fatal alert: internal_error 错误

    问题 在本地部署tomcat项目时,卡在了“Caused by: javax.net.ssl.SSLException: Received fatal alert: internal_error” 排查         查了资料发现在MySQL5.7.41及之前的版本,安全性较低,存在任何用户都可以连接上的 test 库,所以官方在5.7.43版本加大了对隐私的保护。并且采用了默认 useSS

    2024年03月13日
    浏览(67)
  • kettle工具连接MySQL数据库报错 Caused by: javax.net.ssl.SSLException: Received fatal alert: internal_error

            前几天为了修复MySQL数据库漏洞,项目上从5.7.41版本升级到了5.7.43,今天在使用kettle时发现数据库突然连不上了,测试连接报如下错误:            Error connecting to database: (using class org.gjt.mm.mysql.Driver) Communications link failure The last packet successfully received from the serve

    2024年02月06日
    浏览(50)
  • hive建表报错 FAILED: ParseException line 3:22 mismatched input ‘<EOF>‘ expecting StringLiteral near ‘by‘

    hive建表报错 FAILED: ParseException line 3:22 mismatched input ‘’ expecting StringLiteral near ‘by’ in table row format’s field separator 建表语句 终端报错 更改建表语句中 为 由于笔者的hdfs文件中不同字段是通过分号分隔, 因此 但对于特殊字符,为避免产生歧义,hive 语法规定需通过asc码值对

    2024年02月12日
    浏览(37)
  • 解决Caused by: java.lang.IllegalStateException:

    目录 问题描述 解决方案 1. 修改JVM的-Xss参数 2. 检查循环继承依赖项 3. 更新相关库和依赖 总结 在使用Java开发Web应用程序时,我们有时会遇到​ ​Caused by: java.lang.IllegalStateException​ ​​异常,其中包含一个关于StackOverflow错误的描述。这种错误可能会导致无法完成对Web应用程

    2024年02月03日
    浏览(99)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包