您的位置:首页 > 编程语言 > Java开发

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

2017-12-13 11:07 615 查看
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",
4000
"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转换为json
JSONObject jsonObject=JSONObject.fromObject(map);
System.out.println(jsonObject);

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐