Java, IntelliJ/Spring
Java/intelliJ Lombok, DTO 사용법
반응형
Lombok(롬복)
: 자바 프로젝트를 진행하는데 거의 필수적으로 필요한 메소드/생성자 등을 자동생성해줌으로써 코드를 절약할 수 있도록 도와주는 라이브러리입니다.
해당 부분
- 환경설정
- Windows: Ctrl + Alt + S
- macOS: command + ,
- 검색창에 "Annotation Processors" 입력 후, 우측 "Enable ~" 체크하고 OK 클릭
3. getter() 메소드 다 지우고 필요한 클래스 위에 @getter 입력
@Getter
4. CourseService 클래스 멤버변수 선언부 제거한 뒤 아래 코드 추가
@RequiredArgsConstructor
DTO(Data Transfer Object)
: 데이터 요청 관련 정보를 몰고 다니는 녀석
1. domain 에 CourseRequestDto 클래스생성
2. CourseRequestDto 클래스 위에 @RequiredArgsConstructor / @Getter / @Setter
3. CourseService.java 클래스의 update해당 부분 아래와 같이 수정
@Transactional // SQL 쿼리가 일어나야 함을 스프링에게 알려줌
public Long update(Long id, CourseRequestDto requestDto) {
Course course1 = courseRepository.findById(id).orElseThrow(
() -> new IllegalArgumentException("해당 아이디가 존재하지 않습니다.")
);
course1.update(requestDto);
return course1.getId();
}
4. Course 클래스의 update 부분 수정
public void update(CourseRequestDto requestDto) {
this.title = requestDto.getTitle();
this.tutor = requestDto.getTutor();
}
5. Application 파일의 해당 부분 수정
CourseRequestDto requestDto = new CourseRequestDto("웹개발의 봄, Spring", "무야호");
courseService.update(1L, requestDto);
courseList = courseRepository.findAll();
for (int i = 0; i < courseList.size(); i++) {
Course course = courseList.get(i);
System.out.println(course.getId());
System.out.println(course.getTitle());
System.out.println(course.getTutor());
}
6. 실행 결과
반응형
'Java, IntelliJ > Spring' 카테고리의 다른 글
Spring_CRUD할 수 있는 API 연습 (0) | 2021.06.27 |
---|---|
Java Spring_API-GET/POST/PUT/DELETE (0) | 2021.06.27 |
Java JPA /Timestamped/service/update/delete 사용법 (0) | 2021.06.26 |
Java Spring H2 Console 사용법 (0) | 2021.06.26 |
Web server failed to start. Port 8080 was already in use 에러 (0) | 2021.06.25 |
댓글