我有一个基本的SpringBoot 2.1.0.RELEASE应用程序。使用Spring Initializer,JPA,嵌入式Tomcat,Thymeleaf模板引擎并将其打包为可执行JAR文件。
我有这个对象:
@Entity
public class TdkDevice extends Device {
/**
*
*/
private static final long serialVersionUID = 1L;
public TdkDevice() {
super();
}
public TdkDevice(String deviceKey, String devicePAC) {
super(deviceKey, devicePAC);
}
@OneToOne(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
@JsonIgnore
private User authorizedTeam;
}
在控制器中, 我这样做
currentDevice.setAuthorizedTeam(null);
deviceService.save(currentDevice);
但是在数据库中仍然有旧值
答案 0 :(得分:0)
根据您的休眠配置,JPA存储库上的save
方法可能不会立即将您的更改写入数据库,并且在完成“保存”实体后,您将必须将其刷新。您还可以使用saveAndFlush
方法,该方法将强制将对象中的更改立即写入数据库。