Java中实现任意深度JSON键的结构化转换问题求助
Java中实现任意深度JSON键的结构化转换问题求助
各位好,我现在遇到一个JSON结构转换的问题,想请教大家有没有合适的解决方案。
我现在有这样一个输入JSON:
{ "Employee": [ { "employee1.id": 1 }, { "employee1.name": "John" }, { "employee1.address.street": "main street" }, { "employee1.address.pin": "123456" }, { "employee2.id": 2 }, { "employee2.name": "Mike" }, { "employee2.address.street": "51 street" }, { "employee2.address.pin": "234543" } ] }
我想要把它转换成这样的结构化JSON:
{ "employee1":{ "id": 1, "name": "John", "address": { "street": "main street", "pin": "123456" } }, "employee2":{ "id": 2, "name": "Mike", "address": { "street": "51 street", "pin": "234543" } } }
我自己尝试过的方法是把输入JSON里的键按.拆分,然后循环遍历去构建一个Map<String, Object>。但现在的问题是,未来输入的键可能会有更深的层级,比如:
{ "employee1.address.tempAddress.street": "main street" }, { "employee1.address.permanentAddress.street": "main street" }
这种更深嵌套的情况,我自己写的逻辑可能会很难维护。所以想问问大家,有没有现成的Java库可以实现这种任意深度键的结构化转换?或者有没有类似的工具类/方法可以参考,帮我实现这个需求?
备注:内容来源于stack exchange,提问作者Arthur
相关产品推荐
相关产品推荐

