본문 바로가기
TIL(Today I Learned)

TLI 24일 (23. 6. 15. 목)

by seed0335 2023. 6. 16.
  1. 문제 : 개인 과제 spring를 통한 crud 구현하기
  2. 시도 : 강의 완료 후 적용해보기
  3. 해결 : 
  4. 알게 된 것 : 
    1. API 역할과 사용, 작성법
    2. RequestBody
// 데이터 전송
    @PostMapping
    public List save(@RequestBody Memos memos) {
        Memos memos1 = new Memos(memos.getTitle(), memos.getName(), memos.getContent(), memos.getPassword());
        memosRepository.save(memos1);
        List memoList = memosRepository.findAll();
        return memoList;
    }

    // 전체 조회
    @GetMapping
    public List findAll() {
        List memoList = memosRepository.findAll();
        return memoList;
    }

    // 특정 값 전송 후 조회
    @GetMapping("/{userId}")
    public Memos findById(@PathVariable long userId) {
        Memos memos = memosRepository.findById(userId);
        return memos;
    }

    // 수정
    @PatchMapping("/{userId}")
    public Memos updateUser(@PathVariable long userId, @RequestBody Memos memosUpdate) {
        Memos memos = memosRepository.findById(userId);
        if(memosUpdate.getPassword().equals(memos.getPassword())) {
            memos.setTitle(memosUpdate.getTitle());
            memos.setName(memosUpdate.getName());
            memos.setContent(memosUpdate.getContent());
            Date creationTime = new Date();
            memos.setDate(creationTime);
        } else {}

        return memos;
    }

    // 삭제
    @DeleteMapping("/{userId}")
    public Memos deleteUser(@PathVariable long userId, @RequestBody Memos memosDelete) {
        Memos memos = memosRepository.findById(userId);
        if(memosDelete.getPassword().equals(memos.getPassword())) {
            memosRepository.delete(userId);
            return null;
        } else {

        }
        return memos;
    }

'TIL(Today I Learned)' 카테고리의 다른 글

TLI 26일 (23. 6. 19. 월)  (0) 2023.06.20
TLI 25일 (23. 6. 16. 금)  (0) 2023.06.17
TLI 23일 (23. 6. 14. 수)  (0) 2023.06.14
TLI 22일 (23. 6. 13. 화)  (0) 2023.06.13
TLI 21일 (23. 6. 12. 월)  (0) 2023.06.12

댓글