引入相关包,这里使用的包是net.sf.json-lib:json-lib:2.4,但是引入的时候有点坑,这个包有两个版本,jdk1.5和jdk1.4的,引入的时候要加入相应的jdk版本号,否则不能引入成功.

这里使用的是gradle,所以在dependencies里添加一行

compile "net.sf.json-lib:json-lib:2.4:jdk15"

如果写成 compile "net.sf.json-lib:json-lib:2.4",那么就不能引入成功了.

下面的代码演示了如何将arraylist转成json或者如何将java对象转成json

	public class JavaObject{
		
		private String name;

		public String getName() {
			return name;
		}

		public void setName(String name) {
			this.name = name;
		}
		
	}
	
	@Test
	public void Arraylist2JsonAndObject2Json(){
		
		JavaObject javaObjectA = new JavaObject();
		javaObjectA.setName("A");
		JavaObject javaObjectB = new JavaObject();
		javaObjectB.setName("B");
		
		List<JavaObject> javaObjectList = new ArrayList<>();
		javaObjectList.add(javaObjectA);
		javaObjectList.add(javaObjectB);
		
		System.out.println(JSONObject.fromObject(javaObjectA));
		System.out.println(JSONArray.fromObject(javaObjectList));
	}

核心的方法就是

		System.out.println(JSONObject.fromObject(javaObjectA));
		System.out.println(JSONArray.fromObject(javaObjectList));

输出的结果是

{"name":"A"}
[{"name":"A"},{"name":"B"}]