我的對象休眠添加實體子實體ID
State.java
Entity
@Table(name = "STATE")
public class State {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column(name = "NAME", nullable = false)
private String name;
}
City.java
@Entity
@Table(name = "CITY")
public class City extends BaseEntity {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column(name = "NAME", nullable = false)
private String name;
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "STATE_ID", nullable = false)
private State state;
}
我想添加一個新的城市,我有城市名稱和州ID。要添加一個新城市我執行
- 從狀態表中獲取狀態。
State state = (State) hibernateManager.get(State.class, id);
- 在城市設置狀態。
city.setState(state)
- 執行保存城市運行。
hibernateManager.save(city);
由於我有國家身份證,並在城市表中只有Id將被存儲。那麼是否有任何方法可以讓我們在不調用狀態表的情況下簡單地執行save(city)
將執行相同的任務。
@ R.J感謝您的回覆。除JDBC外,在休眠中還有其他選擇。 –
@ R.J已經嘗試過但會有例外。 –
@ R.J你的生活狀態是什麼意思。由於城市只包含州標識。它的狀態對象是否被更改(刪除情況除外)是否有關係?答案爲 –