인프런 커뮤니티 질문&답변

jaqp7363님의 프로필 이미지

작성한 질문수

실전! Querydsl

Q Class 생성 시 extends 상속 질문

21.03.01 21:55 작성

·

472

0

안녕하세요.

Entity class에 extends DefualtEntity 를 할 경우

Q class 생서 시 DefualtEntity 의 값은 Q Class에 누락되는 현상이 있던데

상속을 해서 구성하면 안되는 걸까요?

DefualtEntity 에는

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Seoul")

private LocalDateTime regDate;

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Seoul")

private LocalDateTime udtDate;

@PrePersist

public void prePersist() {

LocalDateTime now = LocalDateTime.now();

regDate = now;

udtDate = now;

}

@PreUpdate

public void preUpdate() {

udtDate = LocalDateTime.now();

}

이런 공통적인 내용을 넣어보려합니다.

답변 2

1

jaqp7363님의 프로필 이미지
jaqp7363
질문자

2021. 03. 03. 23:20

감사합니다. 개인 서버에 구축 및 실습중인데 잘 해결되었습니다.

개발자로 실력 향상에 도움이 되는 강의 잘 듣고 복습하고 있내요.

앞으로도 좋은 강의 많이 부탁드려요! ^_^

1

김영한님의 프로필 이미지
김영한
지식공유자

2021. 03. 03. 00:33

안녕하세요. jaqp7363님

다음과 같이 매핑하면

@MappedSuperclass

public class BaseEntity {

    private LocalDateTime regDate;

    private LocalDateTime udtDate;

    

}

@Entity

@Getter @Setter

public class BasicEntity extends BaseEntity{

    @Id @GeneratedValue

    private Long id;

}

다음과 같이 Q 클래스도 모두 생성되어야 합니다.

@Generated("com.querydsl.codegen.SupertypeSerializer")

public class QBaseEntity extends EntityPathBase<BaseEntity> {}

@Generated("com.querydsl.codegen.EntitySerializer")

public class QBasicEntity extends EntityPathBase<BasicEntity> {}

감사합니다.

구럴수도있겠땅님의 프로필 이미지

2023. 05. 25. 14:30

만약 BaseEntity 가 다른 모듈에서 관리 되고 있다면, QueryDSL을 사용할 때, 해당 모듈에서도 QueryDSL 설정을 동일하게 해주어야 하나요?

김영한님의 프로필 이미지
김영한
지식공유자

2023. 05. 31. 10:42

안녕하세요. 구럴수도있겠땅님

맞습니다. Querydsl 모듈이 있어야 합니다.

감사합니다.

jaqp7363님의 프로필 이미지

작성한 질문수

질문하기