我想存储我的Object以存储在Sq lite Db中并以编程方式返回它,我想知道如何在sqlite中插入一个对象,即如何作为blob对象插入sqlite
答案 0 :(得分:0)
BB Java Developer论坛中有一个非常类似的问题:
How-to-write-and-read-a-blob-object-in-Blackberry-Java
同样的答案适用于此 - 您必须将对象序列化为字节,然后写入字节。这里有关于编写blob字节的官方文档:
没有什么可以真正帮助你解决在Blackberry Java中将Object转换为字节的问题。你必须自己做。因为没有反射,所以必须为每个Object创建单独的序列化和deSerialization方法。
我建议序列化为JSON格式。 Android人员有GSON会为他们做这件事,但在BlackBerry,你必须自己做。
事实上,序列化过程非常类似于使用HTTP PUT将对象发送到服务器时的操作。您将创建一个JSON字符串,然后将其添加为Post Data。从JSON String创建blob时,只需将String转换为字节(如果您决定使用JSON,请不要忘记在转换为字节时使用UTF-8。)
网上有很多关于序列化对象的信息,但是你会花很多时间来整理在BlackBerry中有用的东西,因为它只实现了J2ME。
有一篇论文讨论了序列化,并提供了几个序列化选项: Recursive and non-recursive method to serialize object at J2ME 如上所述,我不会使用本文中使用的“二进制”方法,我会使用JSON。然后,您可以使用JSON解析器进行deSerialize。
如果您只在一个班级中执行此操作,则可以在该班级中添加代码。如果您打算继续这样做,您可以考虑创建可序列化对象实现的接口,然后在通用SQL处理中,您可以编写共享代码来处理实现该接口的对象。只是一个想法。