ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 (1)
    Back-end/스프링부트 2020. 8. 9. 11:54

     

     

    * 게시판 기능 

    - 게시글 조회

    - 게시글 등록

    - 게시글 수정

    - 게시글 삭제

    * 회원 기능

     - 구글/네이버 로그인

    - 로그인한 사용자 글 작성 권한

    - 본인 작성 글에 대한 권한 관리 


     

    1. 프로젝트 생성 

    2. 프로젝트에 Spring Data Jpa 적용 

        - 의존성 등록

    build.gradle 설정

     - domain 패키지 생성 : 여기서 도메인이란 게시글,댓글,회원,정산,결제 등 소프트웨어에 대한 요구사항 혹은 문제영역. 

    posts 클래스 : 실제 DB의 테이블과 매칭될 클래스 ( Entity클래스라고 한다). 실제 DB데이터에 작업할 경우 실제 쿼리를 날리기보다는, 이 Entity 클래스의 수정을 통해 작업한다.

     

    Posts

    1.@Entity : 

     - 테이블과 링크될 클래스임을 나타낸다.

    - 기본값으로 클래스의 카멜케이스 이름을 언더스코어 네이밍으로 테이블 이름을 매칭한다.

    2. @Id

    - 해당 테이블의 PK 필드

    3.@GeneratedValue

     - PK 생성 규칙. 

    4. @Column

     - 테이블의 칼럼을 나타내며 굳이 선언하지 않더라도 해당 클래스의 필드는 모두 칼럼이 된다. 

     -사용하는 이유 : 기본 값 외에 추가로 변경이 필요한 옵션이 있으면 사용. 

    5. @NoArgsConstructor 

     - 기본 생성자 자동 추가

     - public Posts() {} 와 같은 효과

    6. @Getter

     - 클래스 내 모든 필드의 Getter 메소드를 자동 생성

    7. @Builder

    - 해당 클래스의 빌더 패턴 클래스를 생성

    - 생성자 상단에 선언 시 생성자에 포함된 필드만 빌더에 포함 

     

    * Entity클래스에서는 절대 Setter 메소드를 만들지 않습니다. 

Designed by Tistory.