【发布时间】:2019-02-05 11:08:47
【问题描述】:
我正在尝试更新我的对象上的一个字段,然后尝试保存它。将要调用的控制器中的代码是这样的。
ApplicationUser user = applicationUserRepository.findByVerificationCode(verificationCode);
if(user != null) {
user.setVerified(true);//trying to change a value in a field
applicationUserRepository.save(user);
return new ResponseEntity<>(user,new HttpHeaders(),HttpStatus.OK);
}
当我尝试执行此代码时,我收到此错误
E11000 重复键错误索引:myapp.applicationUser.$id dup key: { : 0 };
我在 ApplicationUser 类中明确定义 Id。 我的ApplicationUser类是这样的
public class ApplicationUser {
@Id
private long id;
private String username;
private String password;
private String name;
private String email;
private String verificationCode;
private boolean verified=false;
private List<Company> boughtCompanies;
public long getId() {
return id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getVerificationCode() {
return verificationCode;
}
public void setVerificationCode(String verificationCode) {
this.verificationCode = verificationCode;
}
public List<Company> getBoughtCompanies() {
return boughtCompanies;
}
public void setBoughtCompanies(List<Company> boughtCompanies) {
this.boughtCompanies = boughtCompanies;
}
public boolean isVerified() {
return verified;
}
public void setVerified(boolean verified) {
this.verified = verified;
}
}
我在这里做错了什么或者我应该如何处理?谢谢。
【问题讨论】:
标签: java spring mongodb spring-boot