栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【fastJson和Gson】

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【fastJson和Gson】

目录

一、数据类型转换,解析工具

二、fastJson

1.从bean类型到String类型

2.从String类型到bean类型

3.从list类型到String类型

4.从string类型到list类型

5.从map类型到string类型

6.从string类型到map类型

三、Gson

1.从bean类型到string类型

2.从list类型到string类型

3.从string类型到list类型


一、数据类型转换,解析工具

1、json-lib:是 apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串。也可以把JavaBean转换成JSON字符串。

2、jackson:是用来解析 JSON 的框架。JSON (JavaScript Object Notation)是一种数据格式,用来在客户端和服务器之间,或系统组件之间交换数据。

3、Gson:google提供的一个json类型转换类,gson和其他现有java json类库最大的不同时gson需要序列化得实体类不需要使用annotation来标识需要序列化得字段,同时gson又可以通过使用annotation来灵活配置需要序列化的字段。

4、fastJson:阿里巴巴推出的一种轻量级的数据交换格式。它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。它采用一种 “键 : 值” 对的文本格式来存储和表示数据,在系统交换数据过程中常常被使用,是一种理想的数据交换语言。

二、fastJson

1.从bean类型到String类型
    @Test
    public void bean2string() {
        try {
            Emp emp = new Emp("admin", "123456", "李昊哲", 1, BaseDate.parse("1983-11-22"));
            String jsonString = JSON.toJSONString(emp);
            System.out.println(jsonString);
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }

2.从String类型到bean类型
    @Test
    public void string2bean() {
        String text = "{"account":admin","birthday":"1983-11-22","gender":1,"nickname":"李昊哲"."password":"123456"}"
        Emp emp = JSON.parseObjedct(text, Emp.class);
        System.out.println(emp.toString());
    }

3.从list类型到String类型
    @Test
    public void list2string(){
    try{
        List list= new ArrayList();
        list.add(new Emp("admin","123456","李昊哲",1,BaseDate.parse("1983-11-22 20:30:00")));
        List.add(new Emp("phoenix","123456","phoenix",1,BasseDate.parse("1983-11-22 20:30:00")));
        String jsonString  =g.toJson(list);
        System.out.println(jsonString);
    }catch (ParseException e){
        e.printStackTrace();
    }
    }

4.从string类型到list类型
    @Test
    public void string2list(){
    try{
        List list= new ArrayList();
        list.add(new Emp("admin","123456","李昊哲",1,BaseDate.parse("1983-11-22 20:30:00")));
        List.add(new Emp("phoenix","123456","phoenix",1,BasseDate.parse("1983-11-22 20:30:00")));
        String jsonString  =g.toJson(list);
        System.out.println(jsonString);
        List empList = g.son.fromJson(jsonString,new Type TOken>)(){}.getTYpe());
        empList.forEach(emp->{
            System.out.println(emp);
        });
    }catch (ParseException e){
        e.printStackTrace();
    }
    }

5.从map类型到string类型
  @Test
    public void map2string(){
    try {
        List list = new ArrayList();
        list.add(new Emp("admin", "123456", "李昊哲", 1, BaseDate.parse("1983-11-22 20:30:00")));
        List.add(new Emp("phoenix", "123456", "phoenix", 1, BasseDate.parse("1983-11-22 20:30:00")));
        Map> map = new HashMap<~> ();
        map.put("emps", list);
        System.out.println(jsonString);
    }catch (ParseException e){
        e.printStackTrace();
    }
    }

6.从string类型到map类型
@Test
    public void string2map(){
    try{
        List list= new ArrayList();
        list.add(new Emp("admin", "123456", "李昊哲", 1, BaseDate.parse("1983-11-22 20:30:00")));
        List.add(new Emp("phoenix", "123456", "phoenix", 1, BasseDate.parse("1983-11-22 20:30:00")));
        Map> map = new HashMap<~>();
        map.put("emps",list);
        String jsonString = gson.toJson(map);
        System.out.println(jsonString);
        Map> stringListHashMap=gson.fromJson(jsonString,new TypeToken>>){}.getType());
        if(StringLishtHashMap.containskey("emps")){
            List emps=stringListHashMap.get("emps");
            emps.forEach(emp->){
                System.out.println(emp.toSTRING());
            });
        }

三、Gson

1.从bean类型到string类型
  Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
    @Test
    public void bean2string(){
    try{
        Date birthday = BaseDate.parse("1983-11-22 20:30:00");
        Emp emp = new Emp("admin","123456","李昊哲",1,BaseDate.parse("1983-11-22 20:30:00"));
                String jsonString =gson.toJson(emp);
        System.out.println(jsonString);
    }catch (ParseException e){
        e.printStackTrace();
    }
    }

2.从list类型到string类型
@Test
    public void list2string(){
    try{
        List list = new ArrayList();
        list.add(new Emp("admin","123456","李昊哲",1,BaseDate.parse("1983-11-22 20:30:00")));
        List.add(new Emp("phoenix","123456","phoenix",1,BasseDate.parse("1983-11-22 20:30:00")));
        String jsonString =gson.toJson(list);
        System.out.println(jsonString);
    }catch (ParseException e){
        e.printStackTrace();
    }
    }

3.从string类型到list类型
@Test
    public void string2list(){
    try{
        List list = new ArrayList();
        list.add(new Emp("admin","123456","李昊哲",1,BaseDate.parse("1983-11-22 20:30:00")));
        List.add(new Emp("phoenix","123456","phoenix",1,BasseDate.parse("1983-11-22 20:30:00")));
        String jsonString =gson.toJson(list);
        List empList = gson.fromJson(jsonString,new TypeToken>(){}.getType());
        empList.forEach(emp ->{
            System.out.println(emp);
        });
    }catch (ParseException e){

    }
    }

4.从map类型到string类型

@Test
    public void map2string(){
    try{
        List list = new ArrayList();
        list.add(new Emp("admin","123456","李昊哲",1,BaseDate.parse("1983-11-22 20:30:00")));
        List.add(new Emp("phoenix","123456","phoenix",1,BasseDate.parse("1983-11-22 20:30:00")));
        Map,List map = new HashMap<~>();
        map.put("emp",list);
        String jsonString = gson.toJson(map);
        System.out.println(jsonString);
    }catch (ParseException e){
        e.printStackTrace();
    }
    }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/858074.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号