스프링부트 독학-6장 블로그 기획하고 API 만들기

jaegeunsong97·2023년 8월 31일
0

출처

신서영개발자님의 스프링부트 책

새롭게 알게된 내용 정리

API, REST API

  • API : 프로그램 간에 상호작용하기 위한 매개체
  • REST API : 웹의 장점을 최대한 활용하는 API
    • Representational State Transfer
    • URL의 설계 방식
    • 장단점
      • 장점 : URL만 보고 무슨 행동을 하는지 알 수 있다.
      • 단점 : 설계를 위한 공식적인 규약 없음, POST GET 과 같은 형태가 정해져있음
    • REST API를 사용하는 방법
      • URL에는 동사를 쓰지 말고, 자원을 표시
        • /students/1
        • /get-student?student_id=1
        • /articles/1
        • /articles/show/1 (O)
        • /show/articles/1 (X)
      • 동사는 HTTP 메소드로
        • GET /articles/1
        • POST /articles
        • PUT /articles/1
        • DELETE /articles/1

엔티티 구성

  • @Buidler

  • DTO : 계층끼리 데이터를 교환하기 위해 사용하는 객체

    • Data Trasfer object
    • 단순히 데이터만 옮김
    • 따라서 비즈니스 로직 X
  • DAO : 데이터베이스와 연결되고 데이터를 조회하고 수정하는데 사용하는 객체

    • 따라서 데이터 수정관련 로직 필요
  • BlogRepository 구성

    • JpaRepository를 상속받는다
    • JpaRepository의 부모 클래스 CrudRepository에 save()메소드 있음 따라서 사용 가능
  • ObjectMapper : Jackson 라이브러리에서 제공

    • 직렬화 : 자바 -> JSON 데이터
    • 역직렬화 : JSON 데이터 -> 자바
    • HTTP에서는 JSON을 사용하고, Java에서는 객체를 사용하기 때문에 형식에 맞게 바꿔줘야한다. 그래서 직렬화, 역직렬화 사용
  • @Transactional : DB에서 데이터를 바꾸기 위한 작업 단위

    • All or Nothing
    • 입출금 생각하기
profile
블로그 이전 : https://medium.com/@jaegeunsong97

0개의 댓글