我的小号: |
3个依赖库: lib/jackson-annotations-2.9.8.jar lib/jackson-core-2.9.8.jar lib/jackson-databind-2.9.8.jar Jackson似乎不能直接使用一个静态方法来转换,需要创建一个mapper对象,并且要指定模板类。 比如,json:
格式化一下:
模型类:
开始转换: 首先需要一个 mapper对象:
将Javabean转为json字符串:
将Javabean转为json字符串并保存为文件:
将json字符串转换为Javabean:
直接将json文件读取json并转为Javabean
Jackson功能上肯定是足够强大的,就是在某些转换的时候有点麻烦。比如要将一个json进行格式化,需要先把json解析为java对象,再使用一下方法进行格式化,有点脱裤子放屁的感觉:
不过直接将json转换为java对象确实是厉害。 附:自定义的格式化json字符串方法:
为什么需要自定义呢?因为即便经过jackson的格式化,效果还是这样:
该自定义的方法的效果是这样:
我需要把它用在一个项目的配置文件中,希望文件方便程序编辑,又比较直观易懂。配置文件的格式就是上面那样,所以上面的格式化效果应该是最优的了。 |
主 楼 发布于:2019-03-20 17:26:51 编辑于:2019-03-20 18:36:18回复 |
我的小号: |
由于前端接收到的服务器数据都是字符串,因而对象与字符串的转换成了前端的刚需。json在这种情况下,便成了字符串与对象之间的转换的事实标准。而java自身显然没有对这种情况作充足的处理,比如map:
输出:
这时就转不回来了。因此,json是更好的选择。 在软件的配置文件方面,json由于方便转换,今后使用json应该是趋势。 |
2 楼 发布于:2019-03-20 18:03:19 回复 |
我的小号: |
上面json字符串使用idea进行格式化:
效果不好,使用几个在线的格式化工具也是一样。看来特定的场景还是得定制才行。 |
3 楼 发布于:2019-03-20 18:24:51 回复 |
旅行者: |
fastjson也可以:
|
4 楼 发布于:2019-03-21 12:36:24 回复 |
絮飘池舞: |
生下来的人没有怕死的,怕死的都TM没生下来,所以谁都别TM的装横! |
5 楼 发布于:2019-05-04 00:48:20 回复 |
心灵守候者: |
万恶意淫为首,百善回帖为先 |
6 楼 发布于:2019-07-17 12:42:04 回复 |
飞扬_: |
出来混老婆总是要换的 |
7 楼 发布于:2020-03-25 06:53:28 回复 |