gaox

Results 15 comments of gaox

https://github.com/Tencent/APIJSON/issues/718#issuecomment-2142590824 使用join,副表查询也是一条条SQL执行,n+1问题依然存在,但是查询1000条数据时,会执行1001次SQL ![image](https://github.com/user-attachments/assets/4c3008dd-4e75-4530-9ba9-5dbf242598c5)

https://github.com/Tencent/APIJSON/issues/748#issuecomment-2259471661 比如说用户和部门(假如用户可以不分配部门),我主表是用户,部门只是附加的属性,可有可无,当前页十条用户都没分配部门,我用app join不就是 dept where dept_id in ()了嘛,我想要的结果是十条用户信息正常显示,只是部门那一列空着,而不是连用户信息都不返回了

单个字段为空可以这样,如果DeviceType查询不到数据时,连DeviceType:{} 都不会返回的,只有 code码、msg等信息

我试过了,项目中自己在使用了,对象内只要有一个字段不为 null,确实会返回这个对象,但是如果所有字段都是null,整个对象就不返回了,前端反映要求把整个对象字段都要返回,只不过每个字段都是null或者空字符串

你说的确实有道理,那我再和前段沟通一下,如果单个字段为空也需要返回的话,除了ifnull函数和远程函数之外我是否可以全局设置直接改fastjson序列化方式,为空也返回呢 ![image](https://github.com/Tencent/APIJSON/assets/31918243/bb9e9cd2-82ef-4bf8-96e3-4e0b65350974)打算在这改返回值的,但是这个方法返回的是JSONObject,fastjson又没有方法可以指定返回值是JSONObject类型的序列化方法,所以目前没找到好的方式来设置出参序列化方式

> 也可以先升级到 7.0.3/6.4.3 等更高版本后试试 升级版本暂时不能升级的

> 也可以先把驼峰转换去掉后试试还有没有同样问题,看看是不是自己的改动导致 驼峰转换去除后还是有问题的

> 断点调试下 AbstractSQLExecutor.execute 中对 JOIN 查到 ResultSet 后分离 主、副 表数据的处理 https://github.com/Tencent/APIJSON/blob/master/APIJSONORM/src/main/java/apijson/orm/AbstractSQLExecutor.java#L390-L584 > > 如果这里没问题,也可能是后面对 User:a 生成的缓存 SQL 与对 User:b 生成的缓存 SQL 一致,导致 AbstractSQLExecuto.getCacheItem 取错了 是缓存取错了,但是暂时没有太好的方案处理,如果去掉缓存会导致n+1查询

https://github.com/Tencent/APIJSON/issues/781#issuecomment-2629362746 master分支是否兼容jdk1.8呀

https://github.com/Tencent/APIJSON/issues/781#issuecomment-2640144322 已成功升级到最新版本,感谢! 不过还是遇到了一个问题,我们项目组要求传参所有必须是驼峰格式,目前@column字段、where条件、出参驼峰均没问题,但是join关联字段时有很大问题,过程也改了很多源码,但是还是各种bug(比如n+1查询等),您有没有一键配置支持所有驼峰的规划呢 ![Image](https://github.com/user-attachments/assets/322e9955-de55-4801-889a-75d46bf27c6f) ![Image](https://github.com/user-attachments/assets/6b9d37e0-0936-4245-a1da-92dfee98b727) ![Image](https://github.com/user-attachments/assets/8ebfd8a9-02b6-4370-a92a-6fc864daa34c) ![Image](https://github.com/user-attachments/assets/b61fd2a3-0e39-465c-b35c-58a140842476) ![Image](https://github.com/user-attachments/assets/eb60c4bd-6341-43b5-8b56-692b4a149005)