JPA용어정리(3)-회원 도메인 개발

lilseongwon·2022년 9월 11일
1
post-thumbnail

이 포스팅 시리즈는 인프런에서 김영한님의 JPA활용 강의를 듣고서
궁금한 점과 중요하다고 생각하는 부분을 정리한 것입니다.


@SpringBootApplication🔋

  • 이 어노테이션이 붙은 어플리케이션 클래스의 하위 클래스를 전부 컴포넌트 스캔 해준다.

@Transactional📟

  • DB에서 CRUD 작업 중 오류가 났을 때, 모든 작업들을 Rollback(원상태로 되돌림)한다.
  • 데이터 변경 작업 시에는 트랜잭셔널이 꼭 필요하다!

    readOnly

    @Transactioanl(readOnly = true)를 하면 읽기 전용 메소드가 되는데,
    영속성 컨텍스트를 플러시 하지 않아서 DB의 성능이 약간 향상된다.
    그러니 데이터 변경 시에만 readOnly를 false로 하는 것이 좋다.

    (Transactional 의 Defaul는 readOnly = false이다.)

Unique🃏

회원가입을 할 때, 동일 아이디 생성을 막도록 검증하는 로직이 필요하다.
하지만 멀티쓰레드(동시에 가입)하는 상황을 대비해서 아이디 컬럼에 유니크 제약조건을 추가하는 것이 안전하다.

    @Column(unique = true, nullable = false)
    private String account_id;

글에서 잘못된 점이나 궁금한 점은 댓글로 남겨주세요🧐

profile
스프린트가 아닌 사이클링

0개의 댓글