- -
response.setContentType( "application/json" ); //服务器响应的类型
String jsonString = request.getParameter( "testJsonString" ); //获取传过来的json字符串
JSONObject jsonobj = JSONObject. fromObject (jsonString); //把 json格式的字符串转化为json对象
System. out .println( "name:" +jsonobj.getString( "name" )+ ",age:" +jsonobj.getInt( "age" ));
输入结果: name:james,age:29
(2)把json数组形式的字符串转化为json数组,再解析出来
// [{"name":"olay","age":21},{"name":"james","age":22},{"name":"kobe","age":34}]
response.setContentType( "application/json" ); //服务器响应的类型
String jsondata = request.getParameter( "testJsonArray" ); //获取传过来的json字符串
System. out .println(jsondata); // [{"name":"olay","age":21},{"name":"james","age":22},{"name":"kobe","age":34}]
JSONArray jsonArray = JSONArray. fromObject (jsondata); //转化为json数组
for ( int i=0;i<jsonArray.size();i++){ //遍历json数组
JSONObject obj = JSONObject. fromObject (jsonArray.get(i)); //转化为json对象
System. out .println( "name:" +obj.getString( "name" )+ ",age:" +obj.getInt( "age" ));
}
2.java中创建json
(1)java字符串转为为json对象
String jsonString = "{\"name\":\"olay\",\"age\":100}" ;
JSONObject j = JSONObject. fromObject (jsonString); // java字符串转为为json对象
System. out .println(j); // {"name":"olay","age":100}
(2)java对象转化为json对象
User user1 = new User();
user1.setName( "james" );
user1.setAge(29);
JSONObject obj =JSONObject . fromObject (user1); // 转化为json对象
System. out .println(obj); // {"age":29,"name":"james"}
(3)java中lst集合转为为json数组
User user1 = new User();
user1.setName( "james" );
user1.setAge(29);
User user2 = new User();
user2.setName( "olay" );
user2.setAge(22);
List list = new ArrayList ();
list.add(user1) ;
list.add(user2) ;
JSONArray arr = JSONArray. fromObject (list); // lst集合转为为json数组
System. out .println(arr); // [{"age":29,"name":"james"},{"age":22,"name":"olay"}]
(4)java中Map集合转化为json二位数组
Student student = new Student();
student.setName( "张三" );
student.setAge(15);
student.setSex( "男" );
Teacher teacher = new Teacher();
teacher.setName( "梨花" );
teacher.setAge(29);
teacher.setSex( "女" );
Map map = new HashMap ();
map.put( "student" , student) ;
map.put( "teacher" , teacher) ;
JSONArray arrMap = JSONArray. fromObject (map); // Map集合转化为json二位数组
System. out .println(arrMap); // [{"student":{"age":15,"name":"张三","sex":"男"},"teacher":{"age":29,"name":"梨花","sex":"女"}}]