[TIL] @어노테이션

김시원·2022년 10월 16일
0

TIL

목록 보기
6/30

@어노테이션

🔖 @Entity

  • 테이블임을 나타냄
  • 단순한 클래스가 아니라 데이터베이스를 위해서 쓰이는 테이블임을 나타냄.

🔖 @NoArgsConstructor

기본생성자를 대신 생성해줌
Args : 파라미터(재료)

public Course(){

}

🔖 @MappedSuperClass

이 클래스를 상속을 하면 멤버변수가 있을텐데 그것도 column으로 인식해라.
ex) Timestamped 클래스의 멤버변수 createdAt, modifiedAt도 컬럼으로 인식해라.

🔖 @EnableJpaAuditing

이 어노테이션을 써줘야 Timestamped를 이용한 수정일자가 완벽히 반영이 된다. 스프링을 통해서.

🔖 @Transactional

update 한 정보가 자동으로 데이터베이스에 반영됨

🔖 @RequiredArgsConstructor

final 적용했을 때, 생성자 자동으로 생성.

// 생성자를 통해, Service 클래스를 만들 때 꼭 Repository를 넣어주도록 스프링에게 알려줌
    public CourseService(CourseRepository courseRepository) {
        this.courseRepository = courseRepository;
    }

이 코드 안써도 됨.

🔖 @RequestBody

  • 이게 없으면 요청한 정보가 RequestDto 안에 쏙 안들어간다.
  • Controller에서 Post 나 Put에서 데이터를 주고 받을때 API에서 넘어오는 데이터를 잘 받으려면 RequestBody 형태로 받아줘야 함.
public Course createCourse(@RequestBody CourseRequestDto requestDto) {
}

🔖 @

profile
IT 개발자 시원

0개의 댓글

관련 채용 정보