티스토리 뷰
728x90
1. lombok은 귀찮은 setter, getter, contructor, toString, equals 등의 많은 메소드들을 자동으로 구현해 준다.
2. Entity 클래스를 생성할 때 모든 Entity가 id를 사용하는데 같은 속성이름(보통 id)일 때는 반복하는 것이 번거롭다.
2-1 이를 해결하기 위해서 중복이 부분을 별도의 클래스에 지정하고 그 클래스를 상속한다.
2-2 중요한 것은 상속을 받는 부모 클래스에도 @Data annotation을 지정하여 setter, getter를 생성해야 한다.
2-3 당연한 말이지만, 빼먹고 원인을 못찾을 경우가 많다.
2-4 @MappedSuperclass가 핵심인데 컴파일되면 자식클래스가 부모를 그대로 복사하는 것처럼 된다.
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
import lombok.Data;
@MappedSuperclass
@Data
public class AbstractEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
}
import lombok.Data;
@Entity
@Data
public class Flight extends AbstractEntity {
private String flightNumber;
private String operatingAirlines;
private String departureCity;
private String arrivalCity;
private Date dateOfDeparture;
private Timestamp estimatedDepartureTime;
}
728x90
'Spring > Spring Basic' 카테고리의 다른 글
Spring : Web MVC + Hibernate with XML config- 설정하기 (0) | 2020.05.11 |
---|---|
Spring Basic : Form을 Date, LocalDate로 변환하기 (0) | 2020.04.29 |
Spring : JFreeChart 사용하기 (0) | 2020.04.26 |
Spring : Web MVC - classpath (0) | 2020.04.24 |
Spring : Web MVC + Form Validation - Basic and @InitBinder (0) | 2020.04.23 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
- 도커 개발환경 참고
- AWS ARN 구조
- Immuability에 관한 설명
- 자바스크립트 멀티 비동기 함수 호출 참고
- WSDL 참고
- SOAP 컨슈머 참고
- MySql dump 사용법
- AWS Lambda with Addon
- NFC 드라이버 linux 설치
- electron IPC
- mifare classic 강의
- go module 관련 상세한 정보
- C 메모리 찍어보기
- C++ Addon 마이그레이션
- JAX WS Header 관련 stackoverflow
- SOAP Custom Header 설정 참고
- SOAP Custom Header
- SOAP BindingProvider
- dispatcher 사용하여 설정
- vagrant kvm으로 사용하기
- git fork, pull request to the …
- vagrant libvirt bridge network
- python, js의 async, await의 차이
- go JSON struct 생성
- Netflix Kinesis 활용 분석
- docker credential problem
- private subnet에서 outbound IP 확…
- 안드로이드 coroutine
- kotlin with, apply, also 등
- 안드로이드 초기로딩이 안되는 경우
- navigation 데이터 보내기
- 레이스 컨디션 navController
- raylib
TAG
- XML
- Rest
- form
- 하이버네이트
- 외부파일
- 매핑
- one-to-one
- login
- mapping
- 스프링
- WebMvc
- Many-To-Many
- Validation
- crud
- 설정하기
- Spring
- 로그인
- spring boot
- jsp
- 설정
- one-to-many
- Angular
- RestTemplate
- Spring Security
- 상속
- Security
- 자바
- hibernate
- MYSQL
- 스프링부트
250x250