Конвертировать POJO в класс данных Kotlin
Недавно я начал конвертировать свой проект Android из Java в Kotlin. Я использую Retrofit во многих классах для извлечения данных из API. В моем проекте есть много POJO, и мне нужно преобразовать их вручную в классы данных, так как он не очень хорошо работает с инструментом автоматического конвертирования Android Studio.
Считайте, что у меня есть класс модели:
public class LoginResponseMinimal {
String firstName, lastName, token;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getToken() {
return token;
}
public void setToken(String token) {
this.token = token;
}
}
Есть ли хороший способ, которым я могу напрямую преобразовать этот класс модели в класс данных в Kotlin? Это нормально для этого класса, чтобы конвертировать вручную, но у меня есть некоторые классы, которые имеют большое количество переменных, и было бы неудобно вручную конвертировать его в класс данных.
3 ответа
Вы можете использовать плагин JsonToKotlinClass
Github Ссылка:
Найти JsonToKotlinClass Снизу изображения:
Надеюсь, это поможет вам... Если вам нужна помощь, вы можете попросить
Рад помочь тебе. Здесь solution
:
https://try.kotlinlang.org/#/Examples/Hello,%20world!/Simplest%20version/Simplest%20version.kt
посетить это link
, а затем перейти на вариант, указанный в верхнем углу конвертировать из Java
затем вставьте свой java
код там и на нижней стороне вы увидите кнопку конвертировать в kotlin, нажмите эту кнопку, и вы получите свой kotlin
код на правой стороне.
И да, не вставляйте весь свой класс
В вашем случае вставьте следующий код:
String firstName, lastName, token;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getToken() {
return token;
}
public void setToken(String token) {
this.token = token;
}
Рассмотрите возможность использования этой библиотеки: https://github.com/wuseal/JsonToKotlinClass
В случае, если вы преобразуете эти классы изначально из JSON, извлеченного из API, это поможет.
Это плагин в AndroidStudio, думаю, в вашем случае это будет лучшее решение