java – 存储和比较数据库中的对象

前端之家收集整理的这篇文章主要介绍了java – 存储和比较数据库中的对象前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在开发一个Android应用程序,它加载到学生列表中,以显示在基于列表的活动中.该应用程序有两个组件.有一个服务器通过xml响应当前活跃学生的列表和应用程序端的数据库,该数据库存储这些学生的一些细节(姓名,年龄等).我想要一种同步这两个数据源的方法.当应用程序启动时,我想检查xml以查看是否添加/删除了服务器上的学生并相应地更新了数据库.

我会在登录时将xml列表解析为学生对象.有没有办法将整个对象存储/检索到android支持数据库中,所以我可以直接比较看看更新/删除内容?它最终会变成类似的东西

if (serverStudent[0].name == dbStudent[0].name)
   //overwrite dbStudent object with serverStudent fields

在Android中实现对象持久性然后比较的最有效/轻量级方法是什么?

最佳答案
这是我过去使用的方法

只要数据库中的对象发生更改,请使用时间戳列来存储该时间.当应用程序在启动时连接时,只需检查app db中的每个时间戳与服务器db中每个对象的时间戳.如果时间戳匹配,则不执行任何操作.如果时间戳不匹配,请从服务器检索更新的记录.确保使用足够详细的时间戳(通常低至毫秒或微秒).

关于时间戳的好处是,如果您不希望服务器数据覆盖应用程序数据,您可以查看哪个更新,并保留该对象(如果它们都已被编辑).只是添加一些额外的想法!

猜你在找的Android相关文章