fastjson2 icon indicating copy to clipboard operation
fastjson2 copied to clipboard

[BUG] JSON.parseArray(datas, AppPermissionInfo.class, JSONReader.Feature.SupportSmartMatch);解析数据bean 内字段全部为null值

Open ka3811 opened this issue 8 months ago • 5 comments

问题描述

简要描述您碰到的问题。 datas=“[{ "appId_" : "sssssss", "groupDesc_" : "Storage", "hide_" : "n", "permissionDesc_" : "Allows the app to modify or delete photos, media content, and files on the memory card.", "permissionLabel_" : "Modify or delete the contents of your memory card", "pkg_" : "ctrip.english", "safeData" : "{"appId":"sssssss","groupDesc":"Storage","hide":"n","permissionDesc":"Allows the app to modify or delete photos, media content, and files on the memory card.","permissionLabel":"Modify or delete the contents of your memory card","pkg":"ctrip.english","targetSDK":34}", "targetSDK_" : 34 } ]” List<AppPermissionInfo> infos = JSON.parseArray(datas, AppPermissionInfo.class) AppPermissionInfo.class @注解String appId, @注解String groupDesc, 解析后的集合内 AppPermissionInfo 内所有字段均是空置

环境信息

请填写以下信息:

  • OS信息: [e.g.:CentOS 8.4.2105 4Core 3.10GHz 16 GB]
  • JDK信息: [e.g.:Openjdk 11.0.8]
  • 版本信息:[e.g.:Fastjson2 2.0.54.android5]

重现步骤

如何操作可以重现该问题:

  1. 使用 xxx.xxx 方法
  2. 输入 ... 数据
  3. 出现 ... 错误
//可在此输入示例代码

期待的正确结果

对您期望发生的结果进行清晰简洁的描述。

相关日志输出

请复制并粘贴任何相关的日志输出。

附加信息

如果你还有其他需要提供的信息,可以在这里填写(可以提供截图、视频等)。

ka3811 avatar Apr 24 '25 12:04 ka3811

List<AppPermissionInfo> infos = JSON.parseArray(datas, AppPermissionInfo.class, JSONReader.Feature.SupportSmartMatch);解析后的集合内 AppPermissionInfo 内所有字段均是空置

ka3811 avatar Apr 24 '25 12:04 ka3811

方便给出能够重现该问题的全部代码吗?比如AppPermissionInfo的代码

jujn avatar Apr 24 '25 12:04 jujn

也出现了这样的情况,data class。kotlin版本2.1.0

yihuajia avatar Apr 24 '25 12:04 yihuajia

Image 查了一下官方说明,SupportSmartMatch能够识别上面五种,目前应该是不支持后下划线类型的识别。

jujn avatar Apr 25 '25 08:04 jujn

Thank you, 我删除注解方式,使用 全字段匹配可以解析到了

ka3811 avatar Apr 28 '25 08:04 ka3811