原
版权声明:本文为博主原创文章,未经博主允许不得转载。	https://blog.csdn.net/u010899138/article/details/78553383
由于很长一段时间工作和家里事情比较多,好久没有进行博客的更新了。
好了,今天记录一下关于org.json.JSONObject的使用。由于项目的原因,之前我们在对外提供的sdk的过程中,为了便捷,采用了第三方com.google.gson.Gson进行json数据的解析,当初就觉得作为一个sdk提供厂商在sdk内部引入第三方的jar包不是一个稳妥的做法。现在这个问题终于暴露出来了,在给第三方提供基于apicloud平台的sdk时,由于这个gson的jar包冲突导致应用无法编译。虽然我通过模块拆分的方式解决了该问题,但是也为我提了个醒,应该尽快移除对第三方jar包的依赖。
在替换之前,就听其它人说JSONObect需要手动处理很麻烦之类的,但是由于之前通过反射处理了一些问题,因此能够立即考虑到反射的方式来解决。现在直接上三个方法的代码:
对象转换为json字符串/** * 获取对象的属性和属性值的json字符串,仅将有属性值的进行json转换 * * @param obj * @return */publicstatic StringgetJsonFromObject(Object obj) {if (obj ==null)returnnull; String json =null; Class cla = obj.getClass(); Field[] fields = cla.getDeclaredFields(); JSONObject jsonObject =new JSONObject();for (int i =0; i