确认

  • [X] 我使用的版本是最新版, 并且使用插件确认过项目里无依赖版本冲突
  • [X] 我已经在 issue 中搜索过, 确认问题没有被提出过
  • [X] 我已经修改标题, 将标题中的 描述 替换为遇到的问题

当前程序版本

3.5.5

问题描述

我有一个A表(A库),B表(B库),查询时A表left join B库.B表 on ....

当在跨数据库中查询时,指定了@TableName注解(库名.表名),我注意到在生成jsqlparser.Table对象时,setName方法时获取到数组partItems,但是他默认取了下标为0的值去setName(默认表明是下标为0),那么在搭配多租户框架时,实际添加多租户id时由于无法获取正确的库名,导致添加的多租户id有问题

目前这个问题可以通过继承TenantLineHandler类中的ignoreTable去解决,但是总归很别扭,希望能看看这个问题

9yiBvm0VWA

详细堆栈日志

No response

Comment From: nieqiurong

jsqlparser版本后面差异很大,升级最新版本看看,有问题再提供复现工程或者sql样例

Comment From: lzysuqianqiu

jsqlparser 5.1出来了,怎么不升级下

Comment From: Sandaman2015

jsqlparser 5.1出来了,怎么不升级下 但是需要升级jdk11

Comment From: Sandaman2015

建议后续遇到这个问题的哥们,可以采用ignoreTable的方法去避免或者升级jdk版本并升级jsqlparser到5.1之后