0

类与Maps

public class Page {
    private Map<LocaleWrapper, String> titles;
    private Map<LocaleWrapper, String> texts;

    (...)
}

关键类

public class LocaleWrapper implements Serializable {
    private Locale locale;

    //Constructor, getter, setter
}

我的 IDE 抛出错误:

Basic attributes can only be of the following types: (...), or any Serializable type.

为什么我的 IDE 会抛出这个错误,我该如何修复我的映射?提前致谢。

4

1 回答 1

1

显示此错误 AFAIK 是因为该属性位于 JPA 实体内,而不仅仅是一个简单的类。

而且 Map 不可序列化。

你真的想将整个地图保存为一个序列化的字节数组,在一个 BLOB 列中吗?如果是这样,请选择可序列化的类型,例如 HashMap。如果没有,那么映射需要在实体和/或嵌入类型之间定义某种形式的关联,我首先会考虑您希望如何将信息存储在数据库中,并将数据库模式映射到实体。

于 2012-11-25T14:09:06.263 回答