사용자 도구

사이트 도구


java:jpa:entity

JPA Entity

Entity 에 넣을 정보

  • 개발자는 DB 테이블보다는 Entity 를 더 많이 참조하는 경향이 있는데 여기에 충분한 정보가 없으면 컨텍스트 스위칭이 심하게 발생한다. 따라서 Entity 에 애노테이션이나 주석으로 충분한 정보를 넣어줘야 한다. DB Comment 보다 중요하다.
  • Entity Class 에 @Table, @Column 에 정확한 정보를 넣는다. 이름, length, nullable 여부 등 최대한 넣는다.
  • Index 정보도 최대한 넣어주는게 좋은데, 다 넣을 수 없다면 unique 인덱스 정보라도 넣어준다. unique 정보는 개발할 때 중요한 비즈니스 로직 지침 사항이 돼 준다.

Serializable / 직렬화

  • @Id/Primary Key 는 항상 Serializable 해야한다.
  • detached entity 객체가 원격으로 전송되거나, HttpSession 등에 저장되려면 Entity 자체가 Serializable 해야한다. 하지만 그럴일이 없다면 Entity 자체가 꼭 Serializable할 필요는 없다.
  • 클러스터링 2차 캐시 사용시에(이 클러스터가 Java 직렬화로 데이터를 주고 받아서?)도 Entity 가 Serializable 해야 한다.

Entity Generate

Intellij DB 스키마로부터 JPA Entity 생성하기

java/jpa/entity.txt · 마지막으로 수정됨: 2022/11/09 11:17 저자 kwon37xi