반응형
JPA 를 사용할 때, entity 에 작성한 변수는 자동으로 db의 컬럼으로 만들어진다.
화면에서 검색 조건 이나, 데이터를 변환에서 보여주고 싶은 경우 등등 db의 컬럼은 아닌데 변수를 쓰고싶은 경우!
두 가지 방법이 있다.
첫번째로 vo 에만 해당 변수를 선언해서 사용하면 된다.
entity는 db와 매핑하는 용도, vo는 화면과 매핑하는 용도이니.. vo 에만 잘 선언해두고 잘 사용하면 끝..
(entity 와 vo는 mapper 를 사용하여 같은 변수들은 간단하게 변환 가능.)
근데 vo 도 만들기 귀찮고.. mapper 도 쓰기 싫고..entity 하나로 끝내고 싶다면
두번째 방법인 @Transient 어노테이션을 사용하자!
entity 에 db의 column으로 사용하지 않을 변수에는 @Transient 변수를 선언해주면 끝!
(당연한말이지만 vo를 사용할때도 entity에 @Transient 변수를 사용해도 된다!)
반응형
'개발 > JPA' 카테고리의 다른 글
[JPA] @Query 어노테이션을 이용하여 nativeQeury 작성(jpa 에서 group by 사용하기) (2) | 2022.01.04 |
---|---|
[JPA] @Query 로 직접 쿼리 작성하기 (2) | 2021.12.10 |
[JPA] Unable to locate Attribute with the the given name [column] on this ManagedType ..어쩌구..저쩌구.. (0) | 2021.11.30 |