Java对象与json字符串的转换

简介: 前后台传递通常会用到Json来转换,因此java对象与json字符串之间的转换使用变得很频繁。

使用Gson--谷歌

导入依赖

//Gson pom依赖
<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.5</version>
</dependency>
示例
//创建java对象
Person person = new Person();
person.setUname("zhangsan");
person.setAge(20);
person.setSex("男");

//创建Gson对象
Gson gson = new Gson();

//java对象转化成Json格式的字符串
String jsonString = gson.toJson(Person);

//Json格式的字符串转换成java对象
Person p = gson.fromJson(jsonString,Person.class);

使用FastJson--阿里

导入依赖

//fastJson pom依赖
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.62</version>
</dependency>
示例
//创建java对象
Person person = new Person();
person.setUname("zhangsan");
person.setAge(20);
person.setSex("男");

//Java对象转化成Json格式的字符串
//用法:JSONObject.toJsonString(Java对象);
String jsonString = JSONObject.toJSONString(Person);

//Json格式的字符串转换成Java对象
//用法:JSONObject.toJavaObject(JSON字符串,Java对象.class)
Person p = JSONObject.toJavaObject(jsonString,Person.class);

//Json格式字符串转Json对象
//用法:JSONObject.parseObject(JSON字符串)
JSONObject jsonObject = JSONObject.parseObject(jsonString);

Jackson ---Spring Mvc内置解析

导入依赖

jackson核心依赖
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.10.1</version>
</dependency>
示例
//创建java对象
Person person = new Person();
person.setUname("zhangsan");
person.setAge(20);
person.setSex("男");

// 创建ObjectMapper对象。
ObjectMapper mapper = new ObjectMapper();

// Java对象转Json格式字符串
jsonString = mapper.writeValueAsString(person);

// Json格式字符串转Java对象。
Person p= mapper.readValue(jsonString, Person.class);
目录
相关文章
|
10天前
|
Java
Java 字符串分割split空字符串丢失解决方案
Java 字符串分割split空字符串丢失解决方案
|
1天前
|
Java
Java中如何克隆一个对象?
【4月更文挑战第13天】
9 0
|
2天前
|
Java API 数据库
深入解析:使用JPA进行Java对象关系映射的实践与应用
【4月更文挑战第17天】Java Persistence API (JPA) 是Java EE中的ORM规范,简化数据库操作,让开发者以面向对象方式处理数据,提高效率和代码可读性。它定义了Java对象与数据库表的映射,通过@Entity等注解标记实体类,如User类映射到users表。JPA提供持久化上下文和EntityManager,管理对象生命周期,支持Criteria API和JPQL进行数据库查询。同时,JPA包含事务管理功能,保证数据一致性。使用JPA能降低开发复杂性,但需根据项目需求灵活应用,结合框架如Spring Data JPA,进一步提升开发便捷性。
|
7天前
|
存储 Java 编译器
对象的交响曲:深入理解Java面向对象的绝妙之处
对象的交响曲:深入理解Java面向对象的绝妙之处
36 0
对象的交响曲:深入理解Java面向对象的绝妙之处
|
11天前
|
XML JSON JavaScript
Java中XML和JSON的比较与应用指南
本文对比了Java中XML和JSON的使用,XML以自我描述性和可扩展性著称,适合结构复杂、需验证的场景,但语法冗长。JSON结构简洁,适用于轻量级数据交换,但不支持命名空间。在Java中,处理XML可使用DOM、SAX解析器或XPath,而JSON可借助GSON、Jackson库。根据需求选择合适格式,注意安全、性能和可读性。
23 0
|
12天前
|
Java
Java练习题-键盘录入字符串实现大小写转换
Java练习题-键盘录入字符串实现大小写转换
20 2
|
12天前
|
Java
在Java中,多态性允许不同类的对象对同一消息做出响应
【4月更文挑战第7天】在Java中,多态性允许不同类的对象对同一消息做出响应
17 2
|
13天前
|
存储 安全 Java
Java中实现高效的字符串拼接技术
【4月更文挑战第6天】在Java编程中,字符串拼接是一个常见的操作。然而,由于字符串的不可变性,频繁的拼接操作可能会导致性能问题。本文将探讨Java中实现高效字符串拼接的技术,包括使用StringBuilder类、StringBuffer类以及Java 8中的StringJoiner类。通过对比这些技术的优缺点,我们将为您提供在不同场景下选择合适的字符串拼接方法的建议。
|
16天前
|
JSON C语言 数据格式
C语言与lua通过json对象交互
C语言与lua通过json对象交互
15 1
|
16天前
|
XML JSON JavaScript
使用JSON和XML:数据交换格式在Java Web开发中的应用
【4月更文挑战第3天】本文比较了JSON和XML在Java Web开发中的应用。JSON是一种轻量级、易读的数据交换格式,适合快速解析和节省空间,常用于API和Web服务。XML则提供更强的灵活性和数据描述能力,适合复杂数据结构。Java有Jackson和Gson等库处理JSON,JAXB和DOM/SAX处理XML。选择格式需根据应用场景和需求。