【问题标题】:@Query in Room with TypeConverter带有 TypeConverter 的房间中的 @Query
【发布时间】:2021-03-28 15:14:04
【问题描述】:

您好,我使用带有类型转换器的房间,它完美地工作

@Entity(tableName = "Library")
data class Library(@PrimaryKey var id : String,var categories: List<String> = listOf())

类型转换器

@TypeConverters
object LibraryConverters{
   @TypeConverter
   fun fromString(s : String) : List<String> = Gson().fromJson(s,object : TypeToken<List<String>>() 
                  {}.type)
   @TypeConverter
   fun toJson(l : List<String>) : String = Gson().toJson(l)
}

@Dao
interface LibraryDao{
  @Query("Select * from Library")
  fun allPaged() : androidx.paging.DataSource.Factory<Int,Library>
  }

现在我无论如何都要搜索一个类别。谢谢

【问题讨论】:

    标签: android mysql kotlin android-room typeconverter


    【解决方案1】:

    在房间里,我的列表只保存为 json 字符串,我可以使用一个类别名称获取所有内容

    @Dao
    interface LibraryDao{
    @Query("select * from Library where categories like '%'|| :c ||'%'")
    fun all(c : String) : LiveData<List<Library>> 
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-04
      • 2019-07-23
      • 1970-01-01
      • 2021-12-23
      • 1970-01-01
      • 2021-11-24
      • 1970-01-01
      相关资源
      最近更新 更多