[解決済み] なぜcomposite-idクラスはSerializableを実装しなければならないのですか?
2022-02-09 01:35:41
質問
Serializableを実装していないcomposite-idクラスを作成した場合、どのようにすればよいですか?
@Entity
@Table(name = "board")
public class Board {
@Id
@Column(name = "keyword_news_id")
private int id;
@Id
@Column(name = "board_no")
private int boardNo;
....
のようにエラーが発生します。
Caused by: org.hibernate.MappingException: composite-id class must implement Serializable: com.estinternet.news.domain.IssueNewsBoard
at org.hibernate.mapping.RootClass.checkCompositeIdentifier(RootClass.java:263)
at org.hibernate.mapping.RootClass.validate(RootClass.java:244)
at org.hibernate.cfg.Configuration.validate(Configuration.java:1362)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1865)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:860)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:779)
at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417)
HibernateのエンティティクラスはSerializableである必要はありません。 . では、なぜ composite-id クラスは Serializable を実装しなければならないのでしょうか?私は このスレッド しかし、それは私に十分な情報を与えませんでした。
解決方法は?
セッションオブジェクトはシリアライズ可能である必要があり、それによって参照されるすべてのオブジェクトもシリアライズ可能である必要があります。 id は、セッション内にロードされたオブジェクトのインデックスを作成するためのキーとして使用されます。CompositeIdの場合、クラスそのものがidとして使用されます。
関連
-
[解決済み] java.sql.SQLException: ユーザー 'root'@'localhost' (using password: YES) のためのアクセスが拒否されました。
-
[解決済み】Mockitoでモックからチェックされた例外を投げる
-
[解決済み】java.io.IOException: 壊れたパイプ
-
[解決済み】Java LinkedListでNodesを使用する
-
[解決済み] この2回(1927年)を引き算すると、なぜおかしな結果になるのでしょうか?
-
[解決済み] なぜパスワードにはStringではなくchar[]が好まれるのですか?
-
[解決済み] serialVersionUIDとは何ですか、またなぜそれを使用する必要がありますか?
-
[解決済み] プライベートメソッド、フィールド、インナークラスを持つクラスをテストするにはどうすればよいですか?
-
[解決済み] B "の印刷が "#"の印刷より劇的に遅いのはなぜですか?
-
[解決済み】なぜJavaの+=, -=, *=, /=複合代入演算子はキャスティングを必要としないのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Javaクラスの "型に解決できない"
-
[解決済み】HTTPステータス500 サーブレットクラスのインスタンス化エラー [重複]。
-
[解決済み】Eclipseで「公開型 <<classname>> は独自のファイルで定義する必要があります」エラー【重複あり
-
[解決済み】Hibernateの例外「failed to lazily initialize a collection of role」の解決方法
-
[解決済み】Javaを包含するクラスではないのか?
-
[解決済み】破損したjarファイル
-
[解決済み】Javaのswitch文。定数式が必要だが、定数である
-
[解決済み] JavaでSSLピアが正しくシャットダウンされない
-
[解決済み】Javaの".class expected "について
-
[解決済み】 executeQuery()でデータ操作文が発行できない。)