常用的将Java的String字符串转具体对象的几种方式

这篇具有很好参考价值的文章主要介绍了常用的将Java的String字符串转具体对象的几种方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Java对象以User.class为例,注意:代码中使用到了lombok的@Data注解

package com.example.entity;

import lombok.Data;

@Data
public class User {

    // 姓名
    private String name;

    // 年龄
    private int age;
}

1.Jsonlib解析器

依赖

		<!--json-lib-->
        <dependency>
            <groupId>net.sf.json-lib</groupId>
            <artifactId>json-lib</artifactId>
            <version>2.4</version>
            <classifier>jdk15</classifier>
        </dependency>

字符串转对象-代码展示

package com.example.demo;

import com.example.entity.User;
import net.sf.json.JSONObject;

public class TestA {

    public static void main(String[] args) throws Exception {
        String objectStr = "{\"name\":\"张三\",\"age\":\"18\"}";
        //1、使用JSONObject
        JSONObject jsonObject = JSONObject.fromObject(objectStr);
        User user = (User) JSONObject.toBean(jsonObject, User.class);
        System.out.println("name:" + user.getName());
        System.out.println("age:" + user.getAge());
    }

}

打印截图示例

string 转对象,java,开发语言,json

延伸(对象转String)代码展示

package com.example.demo;

import com.example.entity.User;
import net.sf.json.JSONObject;

public class TestA {

    public static void main(String[] args) throws Exception {
        User user = new User();
        user.setName("张三");
        user.setAge(18);

        // 1.对象转JSONObject
        JSONObject json = JSONObject.fromObject(user);
        // 2.JSONObject转String
        String strJson = json.toString();
        System.out.println(strJson);
    }

}

延伸(对象转String)运行截图

string 转对象,java,开发语言,json

2.fastjson解析器

依赖

		<!-- fastjson -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.75</version>
        </dependency>

字符串转对象-代码展示

package com.example.demo;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.example.entity.User;

public class TestA {

    public static void main(String[] args) throws Exception {
        String objectStr = "{\"name\":\"张三\",\"age\":\"18\"}";
        JSONObject jsonObject = JSON.parseObject(objectStr);
        User user = JSON.toJavaObject(jsonObject, User.class);
        System.out.println("name:" + user.getName());
        System.out.println("age:" + user.getAge());

    }

}

打印截图示例

string 转对象,java,开发语言,json

延伸(对象转String)代码展示

package com.example.demo;

import com.alibaba.fastjson.JSON;
import com.example.entity.User;

public class TestA {

    public static void main(String[] args) throws Exception {
        User user = new User();
        user.setName("张三");
        user.setAge(18);

        String str = JSON.toJSONString(user);
        System.out.println(str);
    }

}

延伸(对象转String)运行截图

string 转对象,java,开发语言,json

3.jackson解析器

依赖

		<!-- jackson -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.7.1</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.dataformat</groupId>
            <artifactId>jackson-dataformat-xml</artifactId>
            <version>2.7.1</version>
        </dependency>

字符串转对象-代码展示

package com.example.demo;

import com.example.entity.User;
import com.fasterxml.jackson.databind.ObjectMapper;

public class TestA {

    public static void main(String[] args) throws Exception {
        String objectStr = "{\"name\":\"张三\",\"age\":\"18\"}";
        ObjectMapper om = new ObjectMapper();
        User user = om.readValue(objectStr, User.class);
        System.out.println("name:" + user.getName());
        System.out.println("age:" + user.getAge());
    }

}

打印截图示例

string 转对象,java,开发语言,json

延伸(对象转String)代码展示

package com.example.demo;

import com.example.entity.User;
import com.fasterxml.jackson.databind.ObjectMapper;

public class TestA {

    public static void main(String[] args) throws Exception {
        User user = new User();
        user.setName("张三");
        user.setAge(18);

        ObjectMapper om = new ObjectMapper();
        String str = om.writeValueAsString(user);
        System.out.println(str);
    }

}

延伸(对象转String)运行截图

string 转对象,java,开发语言,json

4.Gson解析器

依赖

<!-- 谷歌依赖 -->
        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.8.6</version>
        </dependency>

字符串转对象-代码展示

package com.example.demo;

import com.example.entity.User;
import com.google.gson.Gson;

public class TestA {

    public static void main(String[] args) throws Exception {
        String objectStr = "{\"name\":\"张三\",\"age\":\"18\"}";
        Gson gson = new Gson();
        User user = gson.fromJson(objectStr, User.class);
        System.out.println("name:" + user.getName());
        System.out.println("age:" + user.getAge());
    }

}

打印截图示例

string 转对象,java,开发语言,json

延伸(对象转String)代码展示

package com.example.demo;

import com.example.entity.User;
import com.google.gson.Gson;

public class TestA {

    public static void main(String[] args) throws Exception {
        User user = new User();
        user.setName("张三");
        user.setAge(18);
        Gson gson = new Gson();

        String str = gson.toJson(user);
        System.out.println(str);
    }

}

延伸(对象转String)运行截图

string 转对象,java,开发语言,json
以上就是常用的几种String转具体的java对象操作文章来源地址https://www.toymoban.com/news/detail-848157.html

到了这里,关于常用的将Java的String字符串转具体对象的几种方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Redis的String(字符串)最常用的

    string是redis最基本的类型,一个key对应一个value set key value [NX|XX] [GET] [EX seconds|PX milliseconds|EXAT unix-time-seconds|PXAT unix-time-milliseconds|KEEPTTL] set 命令有 EX 、 PX 、 NX 、 XX 以及 KEEPTTL 五个可选参数,其中 KEEPTTL 为6.0版本添加到可选参数 参数 作用 EX seconds 以秒位单位设置过期时间

    2023年04月11日
    浏览(5)
  • JS时间对象(Date)与字符串(String)相互转换

    运行结果: D:DevEnvironmentNodeJsnode.exe D:MyProjectscoding-studysrcmainresourcesstaticutils.js format1 = 2022年09月23日 23:24:39.836 星期五 第3季度 format2 = 2022年9月23日 11:24:39.836 am 周五 第3季度 format3 = 2022-09-23 23:24:39.836 am 五 Process finished with exit code 0 运行结果: D:DevEnvironmentNodeJsnode.exe

    2024年02月16日
    浏览(13)
  • 【数据结构】String类对象的创建与字符串常量池的“神秘交易”

    【数据结构】String类对象的创建与字符串常量池的“神秘交易”

    作者主页: paper jie_博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文录入于《JAVA数据结构》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造,将javaSE基础知识一网打尽,希望可以帮到读者们哦。 其他专栏:

    2024年02月08日
    浏览(10)
  • Rust 标准库字符串类型String及其46种常用方法

    Rust 标准库字符串类型String及其46种常用方法

    Rust主要有两种类型的字符串:str和String str 由[u8]表示,UTF-8编码的字符串的引用,字符串字面值,也称作字符串切片。&str用于查看字符串中的数据。它的大小是固定的,即它不能调整大小。 String String 类型来自标准库,它是可修改、可变长度、可拥有所有权的同样使用UTF

    2024年02月07日
    浏览(11)
  • Java Base64字符串与String字符串互转方法

    Java Base64字符串与String字符串互转方法

    在使用String转Base64和Base64转String上有点小问题,特此记录。 结果: 也是跟上面差不多的思路,将Base64转为byte数组,再转为String

    2024年02月15日
    浏览(12)
  • Java的String(字符串详解)

    Java的String(字符串详解)

    主要有三种,一种是直接使用常量去构造,要么使用new String来构造,或者还可以使用字符数组的形式。 String 类型本身并不存储数据,而是存储指向该字符串的引用,所以字符串类型是一个类,s1是一个引用,指向这个类。而这个类有两个成员变量,一个名称为value,这也是一

    2024年02月07日
    浏览(11)
  • Java中的字符串String

    Java中的字符串String

    目录 一、常用方法 1、字符串构造 2、String对象的比较 (1)、equals方法 (2)、compareTo方法 (3)、compareToIgnoreCase方法(忽略大小写进行比较) 3、字符串查找 4、转化 (1)数值和字符串转化 ​编辑 (2)大小写转换 (3)字符串转数组 (4)格式化 5、字符串替换 6、字符串

    2024年02月05日
    浏览(11)
  • Java中的String字符串练习

    目录 Java中的String字符串练习 01-用户登录 02-遍历字符串并统计字符个数 03-字符串拼接 04-字符串反转 注意点 05-金额转化(简单) 代码解释: 06-手机号屏蔽 07-身份证号码查看 易错点: 08-敏感词替换 注意点 toCharArray() 是Java中的一个方法,它用于将字符串转换为字符数组。 方法签

    2024年03月28日
    浏览(12)
  • Java截取String字符串的方法

    1.指定字符截取字符串,返回字符串数组 2.指定索引,截取字符串 3.通过StringUtils类截取字符串

    2024年04月22日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包