android 自定义日历 数据,如何使用Android中的SQLLite数据库中的日历字段保存自定义对象?...

这篇博客探讨了如何在Android的SQLite数据库中存储自定义对象,如Calendar类型。由于SQLite只支持基本数据类型,作者考虑使用Gson库将自定义对象转换为JSON字符串进行存储。然而,代码示例中的转换和反转换过程似乎存在问题。博主询问是否可以将整个Calendar字段直接存储,并寻求最佳实践来处理多个类的持久化。讨论中提到了对象序列化和数据库规范化的重要性。
摘要由CSDN通过智能技术生成

下面是我想要存储在SQLlite数据库中的一个自定义类。我想要存储然后检索整个Calendar字段startTime和endTime,以便我可以稍后使用Calendar类型的所有字段。如何使用Android中的SQLLite数据库中的日历字段保存自定义对象?

我知道SQLLite仅存储String和Int。有没有办法用SQLLite存储自定义类?

我知道Gson库可以帮助,但是我的代码是正确的吗?

public class Model_BlockTimes {

Calendar startTime;

Calendar endTime;

public Model_BlockTimes() {

}

public Model_BlockTimes(Calendar startTime, Calendar endTime) {

this.startTime = startTime;

this.endTime = endTime;

}

public Calendar getStartTime() {

return startTime;

}

public void setStartTime(Calendar startTime) {

this.startTime = startTime;

}

public Calendar getEndTime() {

return endTime;

}

public void setEndTime(Calendar endTime) {

this.endTime = endTime;

}

}

我的测试代码转换为和从Gson,不工作。

**我可以存储来自功能convertToJson(...)响应存储和从sqllite检索这样?:

public String convertToJson(Model_BlockTimes times) {

Gson gson = new Gson();

String resp = gson.toJson(times);

return resp;

}

如何从回JSON转换为Model_BlockTimes回来?

+0

将字符串格式的日期和存储在数据库中 –

+0

我知道,但有没有办法将自定义对象的字段也作为自定义对象存储在sqllite数据库?我正在尝试将它用于很多类,否则会针对不同类的每个成员字段向字符串转换器写入字符串。 –

+0

它处理持久性时,它的类型的野兽的性质。如果要节省大量信息,最好从更多的规范化角度来处理它,并查看可以在运行时生成哪些信息,而不是单独保存所有信息。 此外,解析到json然后转换回对象是复杂对象的有效方法,但是您无法避免在SQLite中为对象编写“如何保存”。 –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值