json(3)---java中对象、数组、list、map转换为json对象

来源:互联网 发布:天气预报数据来源 编辑:程序博客网 时间:2024/05/19 03:43

1、新建项目JsonText,结构图如下:



2、在src下新建实体类UserVO,代码如下:

package com.cn.vo;public class UserVO {private int userId;private String username;private String password;private int userAge;public int getUserId() {return userId;}public void setUserId(int userId) {this.userId = userId;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public int getUserAge() {return userAge;}public void setUserAge(int userAge) {this.userAge = userAge;}}


3、在src下新建测试类Test1,代码如下:

将java中的对象拼接为字符串转换为json对象

package com.cn.test;import com.cn.vo.UserVO;/** * 使用拼接字符串将java对象转换为json格式 * */public class Test1 {public static void main(String[] args) {UserVO userVO=new UserVO();userVO.setUserId(12);userVO.setUsername("Lilei");userVO.setPassword("123456");userVO.setUserAge(18);//java中拼接字符串构建成json对象String jsonStr="{'userId':"+userVO.getUserId()+",'username':"+userVO.getUsername()+"," +"'password':"+userVO.getPassword()+",'userAge':"+userVO.getUserAge()+"}";System.out.println(jsonStr);}}

这种方式是直接将java对象拼接成json对象,手动拼接较为麻烦和容易出错,故不推荐使用


使用json工具包将java中的各种对象转换为json对象

使用json工具包必须先导入json的jar包,其中json中有很多依赖包都必须一一导入

导入的包如下:


1、将java对象转换为json对象

package com.cn.test;import net.sf.json.JSONObject;import com.cn.vo.UserVO;/** * 利用json包直接将java对象转换为json对象 * */public class Test2 {public static void main(String[] args) {UserVO userVO=new UserVO();userVO.setUserId(12);userVO.setUsername("Lilei");userVO.setPassword("123456");userVO.setUserAge(18);JSONObject jsonStr=JSONObject.fromObject(userVO);System.out.println(jsonStr);}}

2、将数组对象转换为json对象

package com.cn.test;import net.sf.json.JSONArray;/** * 将数组转换为json * */public class Test3 {public static void main(String[] args) {String[] userArr={"Tom","Lucy","Lily","Lilei"};JSONArray jsonStr=JSONArray.fromObject(userArr);System.out.println(jsonStr);}}

3、将list集合转换为json对象

package com.cn.test;import java.util.ArrayList;import java.util.List;import net.sf.json.JSONArray;import com.cn.vo.UserVO;/** * 将ArrayList转换为json * */public class Test4 {public static void main(String[] args) {//1.声明一个数组List<UserVO> userList=new ArrayList<UserVO>();//2.创建一个对象UserVO userVO=new UserVO();userVO.setUserId(1);userVO.setUsername("Lucy");userVO.setPassword("123456");userVO.setUserAge(18);//3.实例化第2个对象UserVO userVO2=new UserVO();userVO2.setUserId(2);userVO2.setUsername("Tom");userVO2.setPassword("123456");userVO2.setUserAge(20);//4.将对象加入到数组中userList.add(userVO);userList.add(userVO2);//将list转换为json数组JSONArray jsonList=JSONArray.fromObject(userList);System.out.println(jsonList);//将list转换为json对象String jsonStr="{'userVO':"+jsonList.toString()+"}";System.out.println(jsonStr);}}

4、将map集合转换为json对象

package com.cn.test;import java.util.HashMap;import java.util.Map;import net.sf.json.JSONObject;/** * 将map转换为json对象 * */public class Test5 {public static void main(String[] args) {Map<String,Object> map=new HashMap<String,Object>();map.put("userId", 1001);map.put("username", "Lucy");map.put("password", "123456");map.put("userAge", 18);//将map转换为jsonJSONObject jsonObject=JSONObject.fromObject(map);System.out.println(jsonObject);}}



阅读全文
0 0