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 に答える