fastjson是哪个包?fastjson对象数组怎么转json?

阳光 2022-04-11 15:15:48 java常见问答 4780

Fastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象,是java中常用的一个库,可是有些新手不清楚fastjson是哪个包?下面来我们就来给大家讲解一下。

fastjson.jar是阿里爸爸开发的一款专门用于Java开发的包,可以方便的实现json对象与JavaBean对象的转换,实现JavaBean对象与json字符串的转换,实现json对象与json字符串的转换。除了这个fastjson以外,还有Google开发的Gson包,其他形式的如net.sf.json包,都可以实现json的转换。方法名称不同而已,最后的实现结果都是一样的。

fastjson对象数组怎么转json?

下面一个示例是如何使用Fastjson 把对象或数组转JSON

package test;
import java.util.ArrayList; import java.util.List;
import com.alibaba.fastjson.JSON;
class User {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "User [name=" + name + ", age=" + age + "]";
}
};
class UserGroup {
private String name;
private Listusers = new ArrayList();
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public ListgetUsers() {
return users;
}
public void setUsers(Listusers) {
this.users = users;
}
@Override
public String toString() {
return "UserGroup [name=" + name + ", users=" + users + "]";
}
}
class FastJsonTest {
public static void main(String[] args) {
// 构建用户geust
User guestUser = new User();
guestUser.setName("guest");
guestUser.setAge(28);
// 构建用户root
User rootUser = new User();
rootUser.setName("root");
guestUser.setAge(35);
// 构建用户组对象
UserGroup group = new UserGroup();
group.setName("admin");
group.getUsers().add(guestUser);
group.getUsers().add(rootUser);
// 用户组对象转JSON串
String jsonString = JSON.toJSONString(group);
System.out.println("jsonString:" + jsonString);
// JSON串转用户组对象
UserGroup group2 = JSON.parseObject(jsonString, UserGroup.class);
System.out.println("group2:" + group2);
// 构建用户对象数组
User[] users = new User[2];
users[0] = guestUser;
users[1] = rootUser;
// 用户对象数组转JSON串
String jsonString2 = JSON.toJSONString(users);
System.out.println("jsonString2:" + jsonString2);
// JSON串转用户对象列表
Listusers2 = JSON.parseArray(jsonString2, User.class);
System.out.println("users2:" + users2);
}
}

输出结果:

jsonString:{"name":"admin","users":[{"age":35,"name":"guest"},{"age":0,"name":"root"}]}
group2:UserGroup [name=admin, users=[User [name=guest, age=35], User 
[name=root, age=0]]]
jsonString2:[{"age":35,"name":"guest"},{"age":0,"name":"root"}]
users2:[User [name=guest, age=35], User [name=root, age=0]]

另外Fastjson 可以操作任何 Java 对象,即使是一些预先存在的没有源码的对象,所以通过fastjson我们可以快速进行开发。最后大家如果想要了解更多json相关知识,敬请关注奇Q工具网。

推荐阅读:

git客户端怎么查看本地的提交记录?Git工作流程是什么?

springmvc和mybatis区别是什么?Spring MVC如何进行数据格式化?

java开发网站需要哪些知识?java开发有哪些技巧?