?? 각 애노테이션에 대해서 모두 알고 쓸 것 아닌가? 그럼 애노테이션은 따로 어떻게 공부하는지?
애노테이션으로 쓸 수 있는 옵션에 대해서 어떻게 공부하는지?
이거 final 왜쓸까요?
컬럼 이름이 이상하다.
# 배운 점
- 관계형 데이터베이스 (RDB, Relational DataBase)
- 서로 지향하는 바가 다른 두 영역의 중간에서 JPA를 통해 패러다임 일치를 시킬 수 있다.
- 관계형 데이터베이스 : 어떻게 데이터를 저장할지에 중점을 둔 기술
- 관계형 데이터베이스를 사용하기 위해서 각 테이블마다 반복적인 CRUD SQL이 생성되어야한다.
- 객체지향 언어 : 메시지를 기반으로 기능과 속성을 한 곳에서 관리하는 기술
- 관계형 데이터베이스 : 어떻게 데이터를 저장할지에 중점을 둔 기술
- JPA <- Hibernate <- Spring Data JPA
- 구현체 교체의 용이성
- 저장소 교체의 용이성
- 도메인 : 게시글, 댓글, 회원, 결제 등 소프트웨어에 대한 요구사항 혹은 문제 영역
- Entity 클래스에서는 절대 Setter 메소드를 만들지 않는다.
- 생성자를 통해서 최종값을 채워 DB에 삽입 - 지금 채워야할 필드가 무엇인지 명확히 지정할 수 없음
- @Builder를 통해 제공되는 빌더 클래스를 사용
# 몰랐던 어노테이션과 함수
- @Entity : 테이블과 링크될 클래스임을 나타냄
- @Id : 해당 테이블의 PK 필드를 나타냄
- @GeneratedValue : PK 생성 규칙을 나타냄
- @Column : 해당 클래스의 필드는 모두 칼럼이 된다.
- 주로 변경하고 싶은 옵션이 있을 때 사용
- @NoArgsConstructor : 기본 생성자 자동 추가
- @Builder : 해당 클래스의 빌더 패턴 클래스를 생성
- @After : JUnit에서 단위 테스트가 끝날 때마다 수행되는 메소드를 지정
- postsRepository.
- save : 테이블 posts에 insert/update 쿼리를 실행
- findAll : 테이블 posts에 있는 모든 데이터를 조회해오는 메소드
개인적으로 자바공부다시하기
'Spring | SpringBoot' 카테고리의 다른 글
oauth2-client 라이브러리를 이용하여 OAuth2 구현하기 (Kakao, Github) (1) | 2024.06.19 |
---|---|
[스프링 스터디] 1주차. 단위테스트, 롬복 (0) | 2022.05.07 |
[스프링 스터디] 7주차 - 스프링 핵심 원리.기본편 (마지막) (0) | 2022.02.24 |
[스프링 스터디] 6주차 - 스프링 핵심 원리.기본편 (0) | 2022.02.17 |
[스프링 스터디] 5주차 - 스프링 핵심 원리.기본편 (0) | 2022.02.10 |
댓글