Java adnroid房间获取HashMap grom数据库

时间:2019-07-15 12:10:45

标签: java android android-room

嗨,这是我的实体;

public class LoadingRow {
    @PrimaryKey(autoGenerate = true)
    @ColumnInfo(name = "id")
    public long id;
    @ColumnInfo(name = "orderId")
    public long orderId;
    @ColumnInfo(name = "binType")
    private String binType;
    @ColumnInfo(name = "trashType")
    private String trashType;
    @ColumnInfo(name = "count")
    private int count;
    @ColumnInfo(name = "status")
    private String status;
}

这是我的dao函数

 @Query("SELECT * FROM bin")
    Map<Long,List<LoadingRow>> getBinsMap();

一个问题是我想获取一个HAshMap

其中键是orderId,加载项列表是所有加载项orderId都相同的列表

1 个答案:

答案 0 :(得分:0)

我认为使用Room无法实现您的要求。如果我弄错了并且有可能,那应该很复杂。

您最好创建一个查询来获取所有具有相同LoadingRow的{​​{1}}对象,如下所示:

orderId

然后,您可以根据需要使用此集合,并将其插入到HashMap中。