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创建一个就行);

三、特点

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

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

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

相关文章
|
2月前
|
IDE Java 开发工具
【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
IntelliJ IDEA创建Java项目的图文详细步骤,手把手带你创建Java项目
235 10
【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
|
1月前
|
JSON IDE Java
鸿蒙开发:json转对象插件回来了
首先,我重新编译了插件,进行了上传,大家可以下载最新的安装包进行体验了,还是和以前一样,提供了在线版和IDE插件版,两个选择,最新的版本,除了升级了版本,兼容了最新的DevEco Studio ,还做了一层优化,就是针对嵌套对象和属性的生成,使用方式呢,一年前的文章中有过详细的概述,这里呢也简单介绍一下。
鸿蒙开发:json转对象插件回来了
|
2月前
|
人工智能 安全 Java
Java并发包下Atomic相关类的使用
本文介绍了 `java.util.concurrent.atomic` 包下的各类原子类及其使用场景,包括基本类型原子类(如 `AtomicInteger`、`AtomicLong`)、数组类型原子类(如 `AtomicIntegerArray`)、引用类型原子类(如 `AtomicReference`)、对象属性修改原子类(如 `AtomicIntegerFieldUpdater`)以及原子操作增强类(如 `LongAdder` 和 `LongAccumulator`)。同时,详细对比了不同原子类在高并发场景下的性能表现,展示了 `LongAdder` 的高效性。
92 31
|
2月前
|
存储 安全 Java
【高薪程序员必看】万字长文拆解Java并发编程!(7):不可变类设计指南
🌟 ​大家好,我是摘星!​ 🌟今天为大家带来的是并发编程中Java不可变类设计指南,废话不多说让我们直接开始。
44 0
|
3月前
|
IDE Java 开发工具
JetBrains IntelliJ IDEA 2025.1 发布 - 领先的 Java 和 Kotlin IDE
JetBrains IntelliJ IDEA 2025.1 (macOS, Linux, Windows) - 领先的 Java 和 Kotlin IDE
244 2
|
3月前
|
Java 数据安全/隐私保护
Java 类和对象
本文介绍了Java编程中类和对象的基础知识,作为面向对象编程(OOP)的核心概念。类是对象的蓝图,定义实体类型;对象是具体实例,包含状态和行为。通过示例展示了如何创建表示汽车的类及其实例,并说明了构造函数、字段和方法的作用。同时,文章还探讨了访问修饰符的使用,强调封装的重要性,如通过getter和setter控制字段访问。最后总结了类与对象的关系及其在Java中的应用,并建议进一步学习继承等概念。
|
4月前
|
存储 监控 安全
重学Java基础篇—类的生命周期深度解析
本文全面解析了Java类的生命周期,涵盖加载、验证、准备、解析、初始化、使用及卸载七个关键阶段。通过分阶段执行机制详解(如加载阶段的触发条件与技术实现),结合方法调用机制、内存回收保护等使用阶段特性,以及卸载条件和特殊场景处理,帮助开发者深入理解JVM运作原理。同时,文章探讨了性能优化建议、典型异常处理及新一代JVM特性(如元空间与模块化系统)。总结中强调安全优先、延迟加载与动态扩展的设计思想,并提供开发建议与进阶方向,助力解决性能调优、内存泄漏排查及框架设计等问题。
152 5
|
3月前
|
Java
java中一个接口A,以及一个实现它的类B,一个A类型的引用对象作为一个方法的参数,这个参数的类型可以是B的类型吗?
本文探讨了面向对象编程中接口与实现类的关系,以及里氏替换原则(LSP)的应用。通过示例代码展示了如何利用多态性将实现类的对象传递给接口类型的参数,满足LSP的要求。LSP确保子类能无缝替换父类或接口,不改变程序行为。接口定义了行为规范,实现类遵循此规范,从而保证了多态性和代码的可维护性。总结来说,接口与实现类的关系天然符合LSP,体现了多态性的核心思想。
82 0
|
4月前
|
Java
java常见的集合类有哪些
Map接口和Collection接口是所有集合框架的父接口: 1. Collection接口的子接口包括:Set接口和List接口 2. Map接口的实现类主要有:HashMap、TreeMap、Hashtable、ConcurrentHashMap以及 Properties等 3. Set接口的实现类主要有:HashSet、TreeSet、LinkedHashSet等 4. List接口的实现类主要有:ArrayList、LinkedList、Stack以及Vector等
|
19天前
|
JSON API 数据格式
淘宝商品评论API接口,json数据示例参考
淘宝开放平台提供了多种API接口来获取商品评论数据,其中taobao.item.reviews.get是一个常用的接口,用于获取指定商品的评论信息。以下是关于该接口的详细介绍和使用方法: