타임라인 만들기 Project
Service
코린이 연대기
2020. 11. 20. 03:54
API 의 기본 기능을 생각하였을때 생성, 조회, 변경, 삭제 가 있는데 이중 변경(update) 기능을 위해
필요한 클래스이다.
MemoService.java
이렇게 작성해보면 updatd 메서드가 Memo.java 에 있어야 한다.
@RequiredArgsConstructor // 생성자를 자동으로 만들 때 final로 선언된 변수를 포함시킨다.
@Service // Service임을 명시
public class MemoService {
private final MemoRepository memoRepository;
@Transactional // DB에 반영되야 함을 명시
public Long update(Long id, MemoRequestDto requestDto) {
Memo memo = memoRepository.findById(id).orElseThrow(
() -> new IllegalArgumentException("아이디가 존재하지 않습니다.")
);
memo.update(requestDto); // update 메서드가 Memo.java 에 있어야 한다
return memo.getId();
}
}
Memo.java 에 아래 메서드를 추가해 username과 contents를 Dto에서 가져와서 넣어준다.
public void update(MemoRequestDto requestDto) {
this.username = requestDto.getUsername();
this.contents = requestDto.getContents();
}