Раньше я сопоставлял объект с DTO в классе service, написав свой собственный метод сопоставления, но недавно я узнал о ModelMapper , все, что нам нужно сделать, это просто добавить model mapper зависимость в pom.xml файл. Без использования ModelMapper код будет выглядеть примерно так:-
//pom.xmlorg.modelmapper modelmapper 2.4.2
//UserService class private UserDTO convertToDto(UserEntity userEntity) { UserDTO userDTO = new UserDTO(); userDTO.setId(userEntity.getId()); userDTO.setEmailID(userEntity.getEmailID()); userDTO.setAbout(userEntity.getAbout()); userDTO.setName(userEntity.getName()); return userDTO; }
или
//UserService class public UserDTO mapUserEntityToUserDTO(UserEntity userEntity) { return new UserDTO(userEntity.getId(),userEntity.getName(), userEntity.getEmailID(), userEntity.getAbout()); }
С помощью Model mapper
//Service class @Autowired private ModelMapper modelMapper; private UserDTO convertToDto(UserEntity userEntity) { UserDTO userDTO = modelMapper.map(userEntity, UserDTO.class); return userDTO; }
Оригинал: “https://dev.to/aasthapandey/convert-entity-to-dto-310e”