编辑/更新JavaSpring
所以我可以创建一个新用户,但我被卡住了。如果我想更新某个用户的电子邮件,我该怎么做?我正在用save创建用户。有没有办法像这样更新它编辑/更新JavaSpring,java,sql,spring,hibernate,dao,Java,Sql,Spring,Hibernate,Dao,所以我可以创建一个新用户,但我被卡住了。如果我想更新某个用户的电子邮件,我该怎么做?我正在用save创建用户。有没有办法像这样更新它 public User update(@RequestBody User user) ` 在您的服务中放置(覆盖)一个更新用户的方法,如下所示: public void updateUser(User user) { User entity = userRepository.findById(user.getId()).orElse(null);
public User update(@RequestBody User user)
`
在您的服务中放置(覆盖)一个更新用户的方法,如下所示:
public void updateUser(User user) {
User entity = userRepository.findById(user.getId()).orElse(null);
//Check if the intended record exists. If exists, update it..
if (entity != null) {
System.out.println("\nUpdating User- " + user.getUsername() + "\n");
entity.setUsername(user.getUsername());
entity.setUseremail(user.getUseremail());
entity.setPassword(bCryptPasswordEncoder.encode(user.getPassword()));
}
// And finally save it...
userRepository.save(entity);
}
事务内部:
dao.findById(userId).ifPresent(user->user.setEmail(newEmail))代码>。您获得持久性,并对其进行更新。
public void updateUser(User user) {
User entity = userRepository.findById(user.getId()).orElse(null);
//Check if the intended record exists. If exists, update it..
if (entity != null) {
System.out.println("\nUpdating User- " + user.getUsername() + "\n");
entity.setUsername(user.getUsername());
entity.setUseremail(user.getUseremail());
entity.setPassword(bCryptPasswordEncoder.encode(user.getPassword()));
}
// And finally save it...
userRepository.save(entity);
}