【发布时间】:2025-12-18 09:45:01
【问题描述】:
我想在持久化或更新之前为实体列设置一个值。为此,我想注入一个服务。
@Entity
@Configurable(autowire=Autowire.BY_TYPE)
@Table(name="WARD")
public class Ward {
@Column(name = "HOSPITAL_ID")
private Long hospitalId;
@Transient
@Autowired
private HospitalService hospitalService;
public Long getHospitalId() {
return hospitalId;
}
public void setHospitalId(Long hospitalId) {
this.hospitalId = hospitalId;
}
@PreUpdate
@PrePersist
private void preUpdatePersist(){
if(hospitalId == null && hospitalService != null)
hospitalId = hospitalService.getSelectedHospital().getId();
}}
这是我在互联网上找到的方式。但这不会注入new Ward() 创建。如何向实体注入服务。
这是春季版本 4.3.10,休眠 4.2.7
【问题讨论】:
标签: spring hibernate dependency-injection autowired