IDEA插件-JSON转java类

简介: IDEA插件-JSON转java类

一、场景

公司对接第三方,如:微信,查看微信开发文档,返回数据格式如下举例文档

{
    "errcode":0,
    "query":"查一下明天从北京到上海的南航机票",
    "type":"flight",
    "semantic":{
        "details":{
            "start_loc":{
            "type":"LOC_CITY",
            "city":"北京市",
            "city_simple":"北京",
            "loc_ori":"北京"
            },
            "end_loc": {
            "type":"LOC_CITY",
            "city":"上海市",
            "city_simple":"上海",
            "loc_ori":"上海"
            },
            "start_date": {
            "type":"DT_ORI",
            "date":"2014-03-05",
            "date_ori":"明天"
            },
            "airline":"中国南方航空公司"
        },
        "intent":"SEARCH"
    }
}

我们如何接收返回的参数,实例化到JAVA对象,首先我们要有一个对象;

二、创建对象

@Data
public class Response{
  private int errcode;
  private Semantic semantic;
  private String query;
  private String type;
}
 
@Data
public class Semantic{
  private Details details;
  private String intent;
}
@Data
public class Details{
  private EndLoc endLoc;
  private StartLoc startLoc;
  private String airline;
  private StartDate startDate;
}
 
@Data
public class EndLoc{
  private String city;
  private String type;
  private String locOri;
  private String citySimple;
}
@Data
public class StartLoc{
  private String city;
  private String type;
  private String locOri;
  private String citySimple;
}
@Data
public class StartDate{
  private String date;
  private String dateOri;
  private String type;
}

我们复制文档的字段,下划线命名改为驼峰(StartLoc与EndLoc创建一个就行),有没有更好的方法,必须有,安装插件RoboPOJOGenerator;

1、插件市场搜索插件并安装

2、在创建类的包上右键新建,选择Generate POJO from JSON;

3、更具需求,选择语言、框架、主类名称;

4、查看生成的类,如有重复生成,手动修改(StartLoc与EndLoc创建一个就行);

三、特点

优点:创建速度快、准确率高;

确定:字段顺序不同,会创建冗余类,需要手动删除、修改;

建议:对生成的类都进行检查,手动修改,如果可以抽取,创建基类。

目录
相关文章
|
3天前
|
JSON JavaScript 前端开发
如何在Java中使用JSON:解析与生成
如何在Java中使用JSON:解析与生成
|
19小时前
|
JSON Java fastjson
老程序员分享:java对象转json
老程序员分享:java对象转json
|
13小时前
|
JSON 开发框架 API
【推荐100个unity插件之20】一个强大的JSON处理库——Newtonsoft.Json(也称为Json.NET)
【推荐100个unity插件之20】一个强大的JSON处理库——Newtonsoft.Json(也称为Json.NET)
5 0
|
17小时前
|
SQL 缓存 Java
Java框架之MyBatis 07-动态SQL-缓存机制-逆向工程-分页插件
Java框架之MyBatis 07-动态SQL-缓存机制-逆向工程-分页插件
|
2天前
|
XML JSON Java
老程序员分享:JAVA对象转换JSON
老程序员分享:JAVA对象转换JSON
|
2天前
|
Java Maven
java运行jar包提示 “XXX中没有主清单属性”,配置maven插件
java运行jar包提示 “XXX中没有主清单属性”,配置maven插件
7 0
|
3天前
|
Java 开发者
java开发者工具IDEA自定义设置主题/字体/字号大小
java开发者工具IDEA自定义设置主题/字体/字号大小
7 0
|
3天前
|
JSON JavaScript Java
如何在Java中处理JSON数据?
如何在Java中处理JSON数据?
|
10天前
|
存储 JSON JavaScript
【chat-gpt问答记录】python将数据存为json格式和yaml格式
【chat-gpt问答记录】python将数据存为json格式和yaml格式
26 1
|
15天前
|
存储 JSON JavaScript
使用Python处理JSON格式数据
使用Python处理JSON格式数据