У меня есть POJO, в котором есть внутренний POJO. Я хочу сохранить этот POJO в моей базе данных, и я использую Room в своем приложении.
Обратитесь к this Я могу использовать @Embedded
для вставки моего внутреннего POJO в мой основной POJO без создания новой таблицы для этого.
Вот как я это сделал:
@Entity
data class Article constructor(
@PrimaryKey(autoGenerate = true)
var id: Long,
@SerializedName("author") var author: String?,
@SerializedName("title") var title: String?,
@SerializedName("description") var description: String?,
@SerializedName("url") var url: String?,
@SerializedName("urlToImage") var urlToImage: String?,
@SerializedName("publishedAt") var publishedAt: String?,
@SerializedName("content") var content: String?,
@Embedded @SerializedName("source") var source :Source
) {
var atricleAuthor = "Author: $author"
}
class Source constructor(
@SerializedName("id") var sourceId: String?,
@SerializedName("name") var sourceNname: String?
)
Но я получаю эту ошибку:
error: Entity class must be annotated with @Entity
public final class Source {
^
Где я не знаю, где я сделал это неправильно.