为Kotlin创建POJO类

Pra*_*ani 32 java android pojo gson kotlin

我想为Kotlin创建POJO类,因为我们知道www.jsonschema2pojo.org将JSON转换为POJO,因此我们可以将它与gson一起使用.

任何人都知道如何快速为Kotlin创建Gson POJO

编辑:

我知道它使用数据类,但有没有最简单的方法来创建它?

吴海豹*_*吴海豹 64

我认为这应该是你想要的插件

JSON到Kotlin类插件

https://github.com/wuseal/JsonToKotlinClass


Pra*_*ani 14

是的,我得到了解决方案

例如:

{
    "foo": "string",
    "bar": "integer",
    "baz": "boolean"
}
Run Code Online (Sandbox Code Playgroud)

我的POJO课程使用http://www.jsonschema2pojo.org/创建

Example.java

public class Example {

    @SerializedName("foo")
    @Expose
    private String foo;
    @SerializedName("bar")
    @Expose
    private String bar;
    @SerializedName("baz")
    @Expose
    private String baz;

    public String getFoo() {
        return foo;
    }

    public void setFoo(String foo) {
        this.foo = foo;
    }

    public String getBar() {
        return bar;
    }

    public void setBar(String bar) {
        this.bar = bar;
    }

    public String getBaz() {
        return baz;
    }

    public void setBaz(String baz) {
        this.baz = baz;
    }
}
Run Code Online (Sandbox Code Playgroud)

使用或转换KotlinCode -> Convert Java File to Kotlin FileCTRL + ALT + SHIFT + K

Example.kt

class Example {

    @SerializedName("foo")
    @Expose
    var foo: String? = null
    @SerializedName("bar")
    @Expose
    var bar: String? = null
    @SerializedName("baz")
    @Expose
    var baz: String? = null
}
Run Code Online (Sandbox Code Playgroud)

谢谢你们.

  • 您可以使用http://www.json2kotlin.com直接从json生成kotlin数据类,而无需在两者之间进行Java转换。 (2认同)

Mat*_*Pag 5

在jsonschema2pojo github存储库中已填写有关Kotlin支持以自动生成数据类的功能请求。当前,没有jsonschema2kotlin Web实用程序可用。

如果您在Android Studio上安装新插件没有任何问题,请按照公认的答案进行操作,否则,您最好的方法是使用jsonschema2pojo将JSON转换为Java POJO,并使用可转换Java的Android Studio 3.0+功能归档到Kotlin之一。

在此处输入图片说明

  • 否决票没有解释,工作人员们不错;) (12认同)

Nab*_*ada 5

如果我收到你的问题,你可能正在搜索一些用于转换为 POJO 的插件。所以 RoboPOJOGenerator 可能会帮助你。您可以使用插件File>Setting>Plugin>Browse Repositories并搜索RoboPOJOGenerator. 要使用这个插件,您首先需要创建一个单独的包,例如“data”,右键单击该包,您将看到Generate POJO from JSON. 另外,您需要包含gson库,因为该插件会自动生成like等gradle注释。gson@SerializedName


Kis*_*nki 5

data class ModelUser(val imagePath: String,val userName: String)
Run Code Online (Sandbox Code Playgroud)

难以置信的对!就这么简单。只需使用data关键字 beforeclass在 Kotlin 中创建 Data 类。

Data 类为您提供了一切,getter、setter、hashCode、toString 和 equals 函数。所以你所要做的就是创建一个实例并开始使用这些函数。


小智 5

在 vs-code 中有一个名为 Paste JSON as Code 的插件。它支持多种语言。 将 Json 粘贴为代码

快速浏览