为 Kotlin 创建 POJO Class
Create POJO Class for Kotlin
我想为 Kotlin 创建 POJO class,因为我们知道 www.jsonschema2pojo.org 将 JSON 转换为 POJO,因此我们可以将其与 gson 一起使用。
有人知道如何为 Kotlin 创建 Gson POJO 快速吗?
已编辑:
我知道它的用途 Data classes,但是有没有最简单的方法来创建它?
data class VideoGame(val name: String, val publisher: String, var reviewScore: Int)
//Constructor
val game: VideoGame = VideoGame("Gears of War", "Epic Games", 8)
print(game.name) // "Gears of War"
print(game.publisher) // "Epic Games"
print(game.reviewScore) // 8
game.reviewScore = 7
关于 Kotlin 支持自动生成数据的功能请求 类 已在 jsonschema2pojo github 存储库中填写 here。
目前,没有可用的 jsonschema2kotlin Web 实用程序。
如果您在 Android Studio 上安装新插件没有任何问题,请按照公认的答案进行操作,否则您最好使用 jsonschema2pojo 转换 JSON 到 Java POJO 并使用 Android Studio 3.0+ 功能将 Java 文件转换为 Kotlin 文件。
是的,我找到了解决方案
例如:
{
"foo": "string",
"bar": "integer",
"baz": "boolean"
}
我的 POJO Class 使用 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;
}
}
使用 Code -> Convert Java File to Kotlin File
或 CTRL + ALT + SHIFT + 转换 Kotlin Class 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
}
谢谢大家
如果我得到你的问题,你可能正在搜索一些用于转换为 POJO 的插件。所以
RoboPOJOGenerator
可能会帮助你。您可以使用来自 File>Setting>Plugin>Browse Repositories
的插件并搜索 RoboPOJOGenerator
。
要使用此插件,您首先需要创建一个单独的包,如 "data",右键单击该包,您将看到从 JSON
生成 POJO。此外,您需要在 gradle
中包含 gson
库,因为此插件会自动生成 gson
的注释,如 @SerializedName
等
我想这应该是你想要的插件
data class ModelUser(val imagePath: String,val userName: String)
难以置信!就这么简单。只需在 class
之前使用 data
关键字即可在 Kotlin 中创建数据 class。
Data class 为您提供一切,getters、setters、hashCode、toString 和 equals 函数。因此,您所要做的就是创建一个实例并开始使用这些函数。
试试这个
这是简单的方法
- 右击包名selectNew->KotlinFile/Class
- 命名,在我的例子中,我将其命名为模型,你可以随意命名,然后单击 确定
并粘贴此代码,这就是你 POJO/Model class
class Model {
var uid: String? = null
var name: String? = null
}
如何使用这个
val model=Model()
model.name="Sunil"
Log.e("Model after",model.name)
在 vs-code 中有一个名为 Paste JSON as Code 的插件。
它支持多种语言。
Paste Json as code
使用 Android Studio 或 IntelliJ IDEA 插件:
JSON 到科特林 Class (JsonToKotlinClass)
在我的例子中,代码 -> 生成不起作用,它被禁用(见屏幕截图)
您应该安装插件“JsonToKotlinClass”
然后右键单击命名空间并select
在此处粘贴您的 JSON。就这些,利润。
我想为 Kotlin 创建 POJO class,因为我们知道 www.jsonschema2pojo.org 将 JSON 转换为 POJO,因此我们可以将其与 gson 一起使用。
有人知道如何为 Kotlin 创建 Gson POJO 快速吗?
已编辑:
我知道它的用途 Data classes,但是有没有最简单的方法来创建它?
data class VideoGame(val name: String, val publisher: String, var reviewScore: Int)
//Constructor
val game: VideoGame = VideoGame("Gears of War", "Epic Games", 8)
print(game.name) // "Gears of War"
print(game.publisher) // "Epic Games"
print(game.reviewScore) // 8
game.reviewScore = 7
关于 Kotlin 支持自动生成数据的功能请求 类 已在 jsonschema2pojo github 存储库中填写 here。 目前,没有可用的 jsonschema2kotlin Web 实用程序。
如果您在 Android Studio 上安装新插件没有任何问题,请按照公认的答案进行操作,否则您最好使用 jsonschema2pojo 转换 JSON 到 Java POJO 并使用 Android Studio 3.0+ 功能将 Java 文件转换为 Kotlin 文件。
是的,我找到了解决方案
例如:
{
"foo": "string",
"bar": "integer",
"baz": "boolean"
}
我的 POJO Class 使用 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;
}
}
使用 Code -> Convert Java File to Kotlin File
或 CTRL + ALT + SHIFT + 转换 Kotlin Class 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
}
谢谢大家
如果我得到你的问题,你可能正在搜索一些用于转换为 POJO 的插件。所以
RoboPOJOGenerator
可能会帮助你。您可以使用来自 File>Setting>Plugin>Browse Repositories
的插件并搜索 RoboPOJOGenerator
。
要使用此插件,您首先需要创建一个单独的包,如 "data",右键单击该包,您将看到从 JSON
生成 POJO。此外,您需要在 gradle
中包含 gson
库,因为此插件会自动生成 gson
的注释,如 @SerializedName
等
我想这应该是你想要的插件
data class ModelUser(val imagePath: String,val userName: String)
难以置信!就这么简单。只需在 class
之前使用 data
关键字即可在 Kotlin 中创建数据 class。
Data class 为您提供一切,getters、setters、hashCode、toString 和 equals 函数。因此,您所要做的就是创建一个实例并开始使用这些函数。
试试这个
这是简单的方法
- 右击包名selectNew->KotlinFile/Class
- 命名,在我的例子中,我将其命名为模型,你可以随意命名,然后单击 确定
并粘贴此代码,这就是你 POJO/Model class
class Model { var uid: String? = null var name: String? = null }
如何使用这个
val model=Model()
model.name="Sunil"
Log.e("Model after",model.name)
在 vs-code 中有一个名为 Paste JSON as Code 的插件。 它支持多种语言。 Paste Json as code
使用 Android Studio 或 IntelliJ IDEA 插件: JSON 到科特林 Class (JsonToKotlinClass)
在我的例子中,代码 -> 生成不起作用,它被禁用(见屏幕截图)
您应该安装插件“JsonToKotlinClass”
然后右键单击命名空间并select
在此处粘贴您的 JSON。就这些,利润。