QingShan

Results 14 comments of QingShan

我测了一下,原因是DevDeviceInstance中的product_id被转了驼峰命名,所以DevProduct中的id未关联到转驼峰后的productId字段

用的是最新版代码,后台返回数据蛇形转驼峰没有问题。前端传驼峰,自动转蛇形部分不转换

JSONResponse.IS_FORMAT_UNDERLINE = true; SqlConfig加了getSQLKey

参数: { "[]": { "query": 2, "page": 0, "count": 10, "DevProduct": {}, "DevDeviceInstance": { "@column": "productId;count(1):count", "@group": "productId", "productId@": "/DevProduct/id" }, "join": "

我看了。里面的方案只能解决单表查询。表关联里的字段没有转换处理

全局下划线驼峰互转: 1. 重写APIJSONSQLConfig.getSQLKey,APIJSONSQLConfig.setColumn,APIJSONSQLConfig.onGetJoinString(格式化Join里的Key) 2. 重写APIJSONSQLExecutor.getKey 最终实现了一个相对理想的结果,就是不太确定这种方式有没有隐患

> > 全局下划线驼峰互转: > > > > 1. 重写APIJSONSQLConfig.getSQLKey,APIJSONSQLConfig.setColumn,APIJSONSQLConfig.onGetJoinString(格式化Join里的Key) > > 2. 重写APIJSONSQLExecutor.getKey > > 最终实现了一个相对理想的结果,就是不太确定这种方式有没有隐患 > > @SangSpace APIJSONSQLConfig.onGetJoinString这一步你如何实现的呢,我格式化了key和targetKey,但是会触发一个问题,当关联的两个表有相同的字段时,会发起1+n条sql请求(错误的期望),如果是用下划线关联则只会发1条sql(正确的预期)。 > > 下面是异常的样例: ![yichang](https://private-user-images.githubusercontent.com/1762904/354568945-b57b2600-bb81-4e72-bbcc-c29899932486.jpg?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI5NDQyMDQsIm5iZiI6MTcyMjk0MzkwNCwicGF0aCI6Ii8xNzYyOTA0LzM1NDU2ODk0NS1iNTdiMjYwMC1iYjgxLTRlNzItYmJjYy1jMjk4OTk5MzI0ODYuanBnP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgwNiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MDZUMTEzMTQ0WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9YWY3MWQ5MjU4NzgxN2M0ZjY2MjA0YjFjNmEzOGQ2ZmNhYmYwN2EyMThhYWE4MDM5NWQ3NjQxY2FlOTZiZjAzZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.Ab5GJ3ixvV9d1xXdgbYpGjhCY36OKFqEoAe25tqP63c) > > 这个是正常的样例: ![zhengchang](https://private-user-images.githubusercontent.com/1762904/354568677-e994591f-a0e8-43e4-8791-9400103357b1.jpg?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI5NDQyMDQsIm5iZiI6MTcyMjk0MzkwNCwicGF0aCI6Ii8xNzYyOTA0LzM1NDU2ODY3Ny1lOTk0NTkxZi1hMGU4LTQzZTQtODc5MS05NDAwMTAzMzU3YjEuanBnP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgwNiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MDZUMTEzMTQ0WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9NWJiODI4MTQ1OTZiYjY2NDQ4YzJmYWY1ZjliZTFmZTY2OTI5MjAwYjAwNmZiNjdlMjJlZjViY2VmMjZmMjkxZCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.lN283P-X6w0VYEGiwMLHL2Vn-UPUAGymRv05fvct7Ms) 我目前没遇到这个,所以还没处理这种情况

@cloudAndMonkey 收到,谢谢大佬。已Star,前几天病了,一直没来看