728x90
반응형
Lombok를 이용해서 코드를 줄일 수 있다.
Update를 하기 위해 Service 클래스에
@Service
public class CourseService {
private final CourseRepository courseRepository;
public CourseService(CourseRepository courseRepository) {
this.courseRepository = courseRepository;
}
@Transactional
public Long update(Long id, Course course) {
Course course1 = courseRepository.findById(id).orElseThrow(
() -> new IllegalArgumentException("해당 아이디가 존재하지 않습니다.")
);
course1.update(course);
return course1.getId();
}
}
위 코드를 통해 Repository에 넣게 스프링에 넣어줬는데
@RequiredArgsConstructor 를 활용해 생성자를 주입할 수 있다.
@RequiredArgsConstructor
@Service
public class CourseService {
private final CourseRepository courseRepository;
@Transactional
public Long update(Long id, Course course) {
Course course1 = courseRepository.findById(id).orElseThrow(
() -> new IllegalArgumentException("해당 아이디가 존재하지 않습니다.")
);
course1.update(course);
return course1.getId();
}
}
@NonNull이나 final이 붙은 필드에 대한 생성자를 생성할 수 있기에
의존성이 많아지는 경우 잘 활용한다면 간결하게 코드를 작성할 수 있다.
728x90
반응형
'Back Side > Framework > Spring' 카테고리의 다른 글
스프링 포트에러 해결 - "Web server failed to start. Port 8080 was already in use" (0) | 2021.11.18 |
---|
댓글