【问题标题】:Serialization with GSON in a single Entity class在单个实体类中使用 GSON 序列化
【发布时间】:2018-12-26 06:47:51
【问题描述】:

我有一个名为“posts”的父级的 JSON,并且我有各自的子级。我正在使用 GSON 将字段序列化到我的实体中(我正在使用 Room)。

我正在使用一个名为 Post 的 POJO

@Entity
data class Post(
  @SerializableName("somethig")  val something:Int
  @SerializableName("somethig")  val something:Int
)

我正在使用一个带有列表的类

class PostParent{
  @Serializablename("posts") listPosts : List<Post> //to call the parent
}

有没有其他方法可以直接在 Entity 类中传递父 JSON 名称,而不是使用单个 List 进行类?我想避免这种情况,因为我有一个需要插入和获取数据的 dao,而且他只接受列表,所以我不能让我的 dao method 返回类

方法

override fun loadFromDb(): LiveData<PostParent> { //error in build time
                return postsDao.getPosts() //tried to do postsDao.getPosts().data already
            }

【问题讨论】:

    标签: android serialization kotlin gson android-room


    【解决方案1】:

    尝试这样做。我自己还没有尝试过,所以您可能需要在此处编辑一些语法。

    @Entity
    class PostParent{
      @Serializablename("posts") listPosts : List<@Embedded Post>
    }
    
    data class Post(
      @SerializableName("somethig")  val something:Int
      @SerializableName("somethig")  val something:Int
    )
    

    【讨论】:

    • 我无法将@Embedded 放入列表中
    猜你喜欢
    • 2019-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多