@RequiredArgsConstructor // final 선언시 생성자 필요
@Service
public class MemoService {
private final MemoRepository memoRepository; //멤버변수 선언이지만 final 선언 해야만 스프링에서 연결해줌
@Transactional // DB 반영 요청
public Long update(Long id, MemoRequestDto requestDto){
Memo memo = memoRepository.findById(id).orElseThrow(
// find의 결과물은 memo 이므로 memo로 반환
() -> new IllegalArgumentException("아이디가 존재하지 않습니다")
);
memo.update(requestDto);
return id;
}
}
메소드 선언
레포지토리에서 find 기능을 사용하기 위해 레포지토리 멤버 변수 선언
메소드 구현
스프링에서 멤버변수, 서비스, DB 변경 등을 인식할 수 있도록 설정