解決方案
在model層中,增加一個ID列,但需要加上@Transient,讓其對映時做忽略
@Data
@Table(name = "table_name", schema = "you_schema")
public class tableNameVo {
@Id
@Transient
private Long id;
@Column("column1")
private String column1;
@Column("TYPE1")
private String type1;
@Transient註解的作用
@Transient註解用於指示持久化框架(如Hibernate)在進行物件持久化時忽略被註解的屬性。被@Transient註解標記的欄位或方法將不會被對映到資料庫表中的列。
@Transient註解通常用於表示某個屬性是臨時性的、非持久化的或不需要被持久化的。這些屬性的值不需要在資料庫中進行儲存,也不會對資料庫表產生影響。
使用場景
- 計算屬性:某個屬性的值可以直接透過其他持久化屬性計算而得,不需要顯式地儲存到資料庫中。
- 臨時屬性:某個屬性在物件的生命週期中僅用於臨時計算或臨時儲存,不需要被持久化。
- 屬性導航:某個屬性僅用於在物件之間導航,而不需要對映到資料庫表中。