2

我正在尝试序列化和反序列化一个对象以将其存储在 mapDb 中。

我设法使用这个片段序列化对象:

ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream os = new ObjectOutputStream(bos);
os.writeObject(u);
result = bos.toString();

之后,我将“结果”存储在 mapDb 中。一切似乎都像一个魅力。

不幸的是,我在尝试反序列化时遇到了一些问题。

这里的片段:

byte[] b = null;  
b = str.getBytes();
InputStream ac = new ByteArrayInputStream(b);
Object a= ac.read();

str是来自 mapDB 的序列化对象,被视为字符串。之后,我将其“投射”为 byteArray。我使用这种方法是因为我在从 mapDb 作为对象获取数据时遇到了一些问题。

所以,我问你,我该如何解决这个问题。因为对象“ a ”是 java.lang.Integer 的一个实例,而不是所需的类,所以反序列化不起作用。

4

1 回答 1

3

MapDB 有内置的序列化,这行得通吗?

于 2014-03-27T15:33:51.003 回答