Например, если ваша сущность имеет вид
@Entity
public class User{
private long id;
private String username;
private String encodedPassword;
//getters and setters
}
, а ваш UserDTO равен
public class UserDTO{
private String username;
private String plainPassword;
//getters and setters
}
В вашем классе контроллера или службе вы можете сделать что-то вроде
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
...
@Controller
public class UserController{
...
@Autowired
private BCryptPasswordEncoder bCryptPasswordEncoder;
@PostMapping ...
public ResponseEntity<?> register(@RequestBody UserDTO dto){
User user = new User();
user.setUsername(dto.getUsername());
//Following line encodes password and set it for Entity
user.setEncodedPassword(bCryptPasswordEncoder.encode(dto.getPlainPassword()));
...
}
}