[Spring][Java] 간단한 메모장 구현하기 4 (MemoService 생성)

PersesTitan·2022년 6월 20일
0

Spring

목록 보기
23/48

우선 이전에 만들었던 MemoRepository를 의존성 주입해주고, @Transactional(readOnley = true)로 성능을 올려주었습니다. 수정이 필요한 로직인 save, update, remove는 @Transactional를 오버로딩 해주었습니다.

@Service
@RequiredArgsConstructor
@Transactional(readOnly = true)
public class MemoService {

    private final MemoRepository memoRepository;

    @Transactional
    public Long save(Memo memo) {
        memoRepository.save(memo);
        return memo.getId();
    }

    @Transactional
    public void update(Long id, String title, String content) {
        Memo memo = memoRepository.findOne(id);
        memoRepository.update(memo, title, content);
    }

    public Memo findOne(Long id) {
        return memoRepository.findOne(id);
    }

    public List<Memo> findAll() {
        return memoRepository.findAll();
    }

    @Transactional
    public void remove(Long id) {
        Memo memo = memoRepository.findOne(id);
        memoRepository.remove(memo);
    }

    //검색 로직
    public List<Memo> findSearch(String keyWord) {
        if (keyWord == null || keyWord.isEmpty()) return memoRepository.findAll();
        else return memoRepository.findSearch(keyWord);
    }
}

Java 버전 코드
Groovy 버전 코드
Kotlin 버전 코드

profile
안녕하세요 페르세스 티탄입니다! 부족한 부분이 많이 있겠지만 잘부탁드립니다.

0개의 댓글