欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java中對(duì)象轉(zhuǎn)json字符串的幾種常用方式舉例

 更新時(shí)間:2023年10月10日 15:37:39   作者:Swittee丶Henry  
這篇文章主要給大家介紹了關(guān)于java中對(duì)象轉(zhuǎn)json字符串的幾種常用方式,在Java中可以使用許多庫(kù)將對(duì)象轉(zhuǎn)換為JSON字符串,其中最常用的是Jackson和Gson,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下

1.使用Jackson庫(kù):

Jackson是一個(gè)常用且功能強(qiáng)大的Java庫(kù),用于處理JSON數(shù)據(jù)。下面是使用Jackson將對(duì)象轉(zhuǎn)換為JSON字符串的示例:

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
// 創(chuàng)建一個(gè)對(duì)象
MyClass obj = new MyClass(1, "Example");
// 創(chuàng)建ObjectMapper實(shí)例
ObjectMapper objectMapper = new ObjectMapper();
try {
    // 將對(duì)象轉(zhuǎn)換為JSON字符串
    String jsonString = objectMapper.writeValueAsString(obj);
    System.out.println(jsonString);
} catch (JsonProcessingException e) {
    e.printStackTrace();
}

需要依賴:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.12.5</version>
</dependency>

2.使用Gson庫(kù):

Gson是Google提供的一個(gè)Java庫(kù),它可以處理JSON數(shù)據(jù)的序列化和反序列化。以下是使用Gson將對(duì)象轉(zhuǎn)換為JSON字符串的示例

import com.google.gson.Gson;
// 創(chuàng)建一個(gè)對(duì)象
MyClass obj = new MyClass(1, "Example");
// 創(chuàng)建Gson實(shí)例
Gson gson = new Gson();
// 將對(duì)象轉(zhuǎn)換為JSON字符串
String jsonString = gson.toJson(obj);
System.out.println(jsonString);

相關(guān)依賴:

<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.8</version>
</dependency>

3.Hutool工具類

//將對(duì)象(vo)轉(zhuǎn)為JSONObject
       JSONObject jsonObject = (JSONObject) JSONObject.toJSON(order);
//將對(duì)象數(shù)據(jù)轉(zhuǎn)為字符串               
       String jsonString = JSON.toJSONString(jsonObject);

相關(guān)依賴:

<dependency>
			<groupId>cn.hutool</groupId>
			<artifactId>hutool-all</artifactId>
			<version>5.8.20</version>
		</dependency>

附:Java對(duì)象與JSON字符串的相互轉(zhuǎn)換

 1、測(cè)試代碼如下:

package com.hjp.test;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.hjp.DO.Person;
import org.junit.Test;
public class Json {
    @Test
    public void test02() {
        // 創(chuàng)建對(duì)象(嵌套兩層)
        Person person = new Person("hjp", 20000, 22, "男", "area", new Person("lcr", 20000, 22, "男", "area"));
        // 將對(duì)象轉(zhuǎn)為json字符串方法
        String jsonString = JSONObject.toJSONString(person);
        System.out.println("jsonString = " + jsonString);
        // 將json字符串轉(zhuǎn)化為對(duì)象
        Person parseObject = JSON.parseObject(jsonString, Person.class);
        // 驗(yàn)證:嵌套格式的json字符串被全部轉(zhuǎn)為對(duì)象格式
        String name = parseObject.getPerson().getName();
        System.out.println("name = " + name);
    }
}

2、使用到的實(shí)體

import lombok.Data;
@Data
public class Person {
    private String name;  // 姓名
    private int salary; // 薪資
    private int age; // 年齡
    private String sex; //性別
    private String area;  // 地區(qū)
    private Person person;// 嵌套對(duì)象(Person)
    // 構(gòu)造方法
    public Person() {
    }
    public Person(String name, int salary, int age, String sex, String area) {
        this.name = name;
        this.salary = salary;
        this.age = age;
        this.sex = sex;
        this.area = area;
    }
    public Person(String name, int salary, int age, String sex, String area, Person person) {
        this.name = name;
        this.salary = salary;
        this.age = age;
        this.sex = sex;
        this.area = area;
        this.person = person;
    }
}

總結(jié) 

到此這篇關(guān)于java中對(duì)象轉(zhuǎn)json字符串的幾種常用方式的文章就介紹到這了,更多相關(guān)java對(duì)象轉(zhuǎn)json字符串內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringKafka消息發(fā)布之KafkaTemplate與事務(wù)支持功能

    SpringKafka消息發(fā)布之KafkaTemplate與事務(wù)支持功能

    通過(guò)本文介紹的基本用法、序列化選項(xiàng)、事務(wù)支持、錯(cuò)誤處理和性能優(yōu)化技術(shù),開發(fā)者可以構(gòu)建高效可靠的Kafka消息發(fā)布系統(tǒng),事務(wù)支持特性尤為重要,它確保了在分布式環(huán)境中的數(shù)據(jù)一致性,感興趣的朋友一起看看吧
    2025-04-04
  • Java多線程 樂(lè)觀鎖和CAS機(jī)制詳細(xì)

    Java多線程 樂(lè)觀鎖和CAS機(jī)制詳細(xì)

    這篇文章主要介紹了Java多線程 樂(lè)觀鎖和CAS機(jī)制,樂(lè)觀鎖是對(duì)于數(shù)據(jù)沖突保持一種樂(lè)觀態(tài)度,操作數(shù)據(jù)時(shí)不會(huì)對(duì)操作的數(shù)據(jù)進(jìn)行加鎖,需要的朋友可以參考下
    2021-10-10
  • Java object類及正則表達(dá)式原理解析

    Java object類及正則表達(dá)式原理解析

    這篇文章主要介紹了Java object類及正則表達(dá)式原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • SpringBoot Test類注入失敗的解決

    SpringBoot Test類注入失敗的解決

    這篇文章主要介紹了SpringBoot Test類注入失敗的解決方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • jdk動(dòng)態(tài)代理源碼分析過(guò)程

    jdk動(dòng)態(tài)代理源碼分析過(guò)程

    這篇文章主要介紹了jkd動(dòng)態(tài)代理源碼分析過(guò)程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Java中JSON數(shù)據(jù)操作與處理全面指南

    Java中JSON數(shù)據(jù)操作與處理全面指南

    JSON(JavaScript Object Notation)是數(shù)據(jù)交換的輕量級(jí)格式,它以易于人類閱讀和機(jī)器解析的方式組織數(shù)據(jù),基于鍵值對(duì),在Java開發(fā)中,處理JSON數(shù)據(jù)通常涉及使用Jackson、Gson、Fastjson等庫(kù),本文給大家介紹JSON數(shù)據(jù)操作與處理全面指南,感興趣的朋友一起看看吧
    2024-10-10
  • Spring中@Autowired注解的原理詳解

    Spring中@Autowired注解的原理詳解

    這篇文章主要介紹了Spring中@Autowired注解的原理詳解,對(duì)于spring配置一個(gè)bean時(shí),如果需要給該bean提供一些初始化參數(shù),則需要通過(guò)依賴注入方式,所謂的依賴注入就是通過(guò)spring將bean所需要的一些參數(shù)傳遞到bean實(shí)例對(duì)象的過(guò)程,需要的朋友可以參考下
    2023-11-11
  • 深入了解java中的逃逸分析

    深入了解java中的逃逸分析

    這篇文章主要介紹了深入了解java中的逃逸分析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • Mybatis plus通用字段自動(dòng)填充的示例

    Mybatis plus通用字段自動(dòng)填充的示例

    這篇文章主要介紹了Mybatis plus通用字段自動(dòng)填充的示例,幫助大家更好的理解和使用Mybatis,感興趣的朋友可以了解下
    2021-01-01
  • 深入淺析Java反射機(jī)制

    深入淺析Java反射機(jī)制

    Java反射機(jī)制是在運(yùn)行狀態(tài)中,對(duì)于任意一個(gè)類,都能夠知道這個(gè)類的所有屬性和方法;對(duì)于任意一個(gè)對(duì)象,都能夠調(diào)用它的任意一個(gè)方法和屬性;這種動(dòng)態(tài)獲取的信息以及動(dòng)態(tài)調(diào)用對(duì)象的方法的功能稱為Java語(yǔ)言的反射機(jī)制
    2015-11-11

最新評(píng)論