domain 패키지의 board 클래스에 Builder annotation을 추가해준다.
public interface BoardRepository extends JpaRepository<Board, Integer> {
}
@Controller
public class BoardController {
@Autowired
private BoardService boardService;
@PostMapping("/savepost")
@ResponseBody
public String savePost(@RequestBody BoardSaveRequestDto dto){
boardService.savePost(dto);
return "ok";
}
}
@Service
public class BoardService {
@Autowired
private BoardRepository boardRepository;
@Transactional
public void savePost(BoardSaveRequestDto dto){
Board boardEntity = BoardSaveRequestDto.toEntity(dto);
boardRepository.save(boardEntity);
}
}
@Data
public class BoardSaveRequestDto {
private String title;
private String content;
public static Board toEntity(BoardSaveRequestDto dto){
Board boardEntity = Board.builder()
.title(dto.getTitle())
.content(dto.getContent())
.build();
return boardEntity;
}
}