我遇到了db4o的奇怪行为。当我持有一个具有Serializable []属性的Object(实现Serializable)时,Array只能从存储中正确返回一次,然后只返回一个带有null元素的Array。
我使用db4o 7.12。
修改
这是POJO:
public class ResponseRowWrapper implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
private long uuid;
private long responseUuid;
private Serializable[] row;
private long timestamp;
这是春天的配置:
<property name="transparentActivation" value="true" />
<property name="transparentPersistence" value="true" />
<property name="configurationCreationMode" value="NEW" />
<property name="lockDatabaseFile" value="false" />
<property name="callConstructors" value="true" />
<property name="exceptionsOnNotStorable" value="true" />
并在db4o Config对象中:
configuration.common().objectClass(ResponseRowWrapper.class).cascadeOnUpdate(true);
答案 0 :(得分:1)
尝试将db4o配置对象传递给cascadeOnActivate(true)(导致级联加载)或在db4o中设置更高的激活深度。
答案 1 :(得分:0)
我解决了它,但是我不知道Serializable []出了什么问题,但它无法正常工作,我需要使用Object []并且只关心自己内部只有Serializables。