我有一个名为employee的实体类,我想在选择并按Delete按钮时将其实体软删除。我也可以选择多个雇员,所以在Java中我使用了Employee Entities列表,并且如果我使用entityManager的合并,我想将整个列表更新到数据库表中,但是我只能更新一行,即只能更新一个实体,所以怎么办我解决了这个问题?
这是一些示例代码。
@Entity
@Table(name="EmpInfo",schema="Auth")
public class EmpInfo{
@Id
@Column(name="EmpId")
private String userId;
@Column(name="EmailId")
private String emailId;
@Column(name="FirstName")
private String firstName;
@Column(name="LastName")
private String lastName;
@Column(name="MiddleName")
private String middleName;
@Column(name="UserAttributes")
private String userAttributes;
@Column(name="AddedDate")
private Timestamp addedDate;
@Column(name="ModifiedDate")
private Timestamp modifiedDate;
@Column(name="LastLoginDate")
private Timestamp lastLoginDate;
@Column(name="IsDeleted")
private int isDeleted;
@Column(name="AddedBy")
private String addedBy;
@Transient
private String addedByEmailId;
public String getAddedByEmailId() {
return addedByEmailId;
}
public void setAddedByEmailId(String addedByEmailId) {
this.addedByEmailId = addedByEmailId;
}
public EmpInfo() {
// TODO Auto-generated constructor stub
}
public EmpInfo(EmpInfo uInfo){
super();
this.userId=uInfo.userId;
this.emailId=uInfo.emailId;
this.firstName=uInfo.firstName;
this.lastName=uInfo.lastName;
this.middleName=uInfo.middleName;
this.userAttributes=uInfo.userAttributes;
this.addedDate=uInfo.addedDate;
this.lastLoginDate=uInfo.lastLoginDate;
this.modifiedDate=uInfo.modifiedDate;
this.addedBy=uInfo.addedBy;
this.roles=uInfo.roles;
}
public List<RoleName> getRoles() {
return roles;
}
public void setRoles(List<RoleName> roles) {
this.roles = roles;
}
public int getIsDeleted() {
return isDeleted;
}
public void setIsDeleted(int isDeleted) {
this.isDeleted = isDeleted;
}
public Date getAddedDate() {
return addedDate;
}
public void setAddedDate(Timestamp addedDate) {
this.addedDate = addedDate;
}
public Date getModifiedDate() {
return modifiedDate;
}
public void setModifiedDate(Timestamp modifiedDate) {
this.modifiedDate = modifiedDate;
}
public Date getLastLoginDate() {
return lastLoginDate;
}
public void setLastLoginDate(Timestamp lastLoginDate) {
this.lastLoginDate = lastLoginDate;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getEmailId() {
return emailId;
}
public void setEmailId(String emailId) {
this.emailId = emailId;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getMiddleName() {
return middleName;
}
public void setMiddleName(String middleName) {
this.middleName = middleName;
}
public String getUserAttributes() {
return userAttributes;
}
public void setUserAttributes(String userAttributes) {
this.userAttributes = userAttributes;
}
public String getAddedBy() {
return addedBy;
}
public void setAddedBy(String addedBy) {
this.addedBy = addedBy;
}
@Override
public String toString() {
return "EmpInfo [userId=" + userId + ", emailId=" + emailId + ", firstName=" + firstName + ", lastName="
+ lastName + ", middleName=" + middleName + ", userAttributes=" + userAttributes + ", addedDate="
+ addedDate + ", modifiedDate=" + modifiedDate + ", lastLoginDate=" + lastLoginDate + ", isDeleted="
+ isDeleted + ", addedBy=" + addedBy + "]";
}
}
答案 0 :(得分:0)
public interface EmpInfoRepository extends JpaRepository<EmpInfo, String> {
}
使用它来保存实体列表,如下所示
@Autowired
private EmpInfoRepository empInfoRepository;
empInfoRepository.save(listOfEntity)
由于未定义自定义实现,因此将使用SimpleJpaRepository
完成的实现,它将根据@Id
带注释的字段更新实体