亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用休眠保存嵌套的 POJO 類對象

使用休眠保存嵌套的 POJO 類對象

喵喵時光機 2021-07-08 18:01:27
類1:int field2Class2 field1類2:Class3 field3第3類:String field4String field5Class1 域類:@Table(name = "class1_details")@Entitypublic class Class1Details {  @Id    @GeneratedValue(strategy = GenerationType.AUTO)    @Column(name = "id")    private long id;        @Column(name = "class2_fields")    private Class2 fields;       // respective getters and setters}我正在使用 springboot。我正在為我的 repo 接口擴展 JPARepository。我想將 class1 保存在 db 中。我得到以下異常:org.springframework.orm.jpa.JpaSystemException: 無法序列化;嵌套異常是 org.hibernate.type.SerializationException: could not serialize ...引起:org.hibernate.type.SerializationException:無法序列化......引起:java.io.NotSerializableException:com.model.Class3 ...試過@ElementCollection 但沒有用。請幫忙解決這個問題。
查看完整描述

1 回答

?
慕田峪7331174

TA貢獻1828條經驗 獲得超13個贊

您應該創建嵌套類@Embeddable:


@Entity

@Table(name = "my_entities")

public class MyEntity {

    //...


    private MyData data;

}


@Embeddable

public class MyData {

    private String value;

}

然后Hibernate會處理下表:


create table my_entities (

  -- MyEntity stuff

  --

  value varchar(255)

);

另一個有趣的方法是將 DB 中的嵌套類存儲為JSON,請參閱我的相關答案...


查看完整回答
反對 回復 2021-07-14
  • 1 回答
  • 0 關注
  • 220 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號