详细日志
error: Cannot figure out how to save this field into database. You can
consider adding a type converter for it.
private final java.util.Date mTime = null;
我有一个实体,其字段为
var mStartTime : Date = Date() // java.util.Date
为什么房间不能保留日期对象?什么是Date的最佳转换器?
Date
正是https://developer.android.com/training/data-storage/room/referencing-
data中
给出的示例。
例如,如果要保留Date的实例,可以编写以下TypeConverter来将等效的Unix时间戳存储在数据库中:
public class Converters { @TypeConverter public static Date fromTimestamp(Long value) { return value == null ? null : new Date(value); } @TypeConverter public static Long dateToTimestamp(Date date) { return date == null ? null : date.getTime(); } }
前面的示例定义了2个函数,一个将Date对象转换为Long对象,另一个执行从Long到Date的逆转换。由于Room已经知道如何保留Long对象,因此可以使用此转换器保留Date类型的值。
接下来,将@TypeConverters批注添加到AppDatabase类,以便Room可以使用为该AppDatabase中的每个实体和DAO定义的转换器:
AppDatabase.java
@Database(entities = {User.class}, version = 1) @TypeConverters({Converters.class}) public abstract class AppDatabase extends RoomDatabase { public abstract UserDao userDao(); }
旁注:java.util.Date
被认为设计不当(而且java.util.Calendar
更糟)。如果您有任何不重要的日期时间逻辑,并且可以摆脱API级别26(台式机上的Java
8),通常最好使用java.time
package。如果无法这样做,请参阅https://github.com/JakeWharton/ThreeTenABP以获取反向移植。
问题内容: 试图获得公司名单,但这给了我一个错误。 例外: 我的文件包含: 当我要添加新的工作订单时,select中应该有可用的公司列表。 更新: 这是我的方法 : 问题答案: JSP包含操作返回的选择标记。添加订单时,它应该具有绑定到bean属性的属性。它应该是值堆栈中的一个对象。 在大多数情况下,最好在操作类中初始化该属性,以更好地实现必须编写方法和初始化列表的位置。 因为标签的属性不能为引发
请大家帮忙支持我,谢谢!
问题内容: 我需要打印以下代码: 像这样水平打印而不是垂直打印: 至 我不确定该如何做,会有一些帮助。谢谢 问题答案: 两种选择: 累加一个结果字符串,最后是: 或者告诉Python不要用换行符结束打印的字符串。在您似乎正在使用的Python 3中,您可以通过设置函数的参数(默认情况下为(换行符))来实现此目的: 历史记录:在Python 2中,可以通过在语句末尾添加逗号来实现。
当我想将我的JSON记录到房间数据库中时,我遇到了一个问题。 我的数据类是: )
我要用作的数据类如下: My details对象是一个名为的自定义类的列表,其中包含: 此列表中只有一项。正如上面的数据类中提到的,我还为实体中的特定字段指定了一个TypeConzer类。其定义如下: 为了完成我的问题,下面是我的实现: 采用这种方法,我在构建应用程序时会出现以下错误: 甚至我也怀疑出了问题,因为我的IDE没有显示任何地方都可以使用的中的函数。像这样: 我知道很多人过去也在Stac
我需要你的帮助。我试图在没有反序列化的情况下找到解决方案,但我什么也没找到。如果你能帮我就好了...所以我有了下面的JSON文件 谢谢你的时间和帮助。 我有以下错误: