1. View 확인
데이터를 받기 위해 DTO를 만든다.
import lombok.Data; public class UserRequest { @Data public static class JoinDTO{ private String username; private String password; private String email; //INSERT 시에만 사용 public User toEntity(){ return User.builder() .username(username) .password(password) .email(email) .build(); } }
DTO 에
toEntity
메서드를 생성한다. 이 메서드를 통해 DTO 를 통해 받은 데이터를 엔티티로 만들 수 있다. 엔티티로 만들게 되면 INSERT 할 때 persist
메서드를 사용할 수 있어 훨씬 편리하다2. 컨트롤러
@PostMapping("/join") public String join(UserRequest.JoinDTO requestDTO){ userRepository.save(requestDTO.toEntity()); return "redirect:/login-form"; }
3. 레파지토리
@Transactional public void save(User user) { em.persist(user); }
DTO를 엔티티로 만들면 쿼리를 작성하지 않아도
persist
메서드로 쉽게 INSERT 할 수 있다. Share article