JPA (JPQL)

간단하게 JPQL에 대해서 보자 JPQL은 좀더 복잡한 검색 방법에 대해 나온 쿼리 언어이다. 우리는 ORM을 사용하면 데이터베이스 테이블이 아닌 엔티티 객체를 대상으로 개발하므로 검색도 테이블이 대상이 아닌 객체를 대상으로 하는 방법이 필요 해서 나온 언어이다. 여기서 중요한 것은 데이터베이스를 대상으로 하는 것이 아니라 객체를 대상으로 하는 방식이다. JPQL은 일반 네이티브 Sql과 비슷하다. 몇 가지만 다르고 거의 비슷한 문법을 가지고 있어 Sql을 조금할 줄 안다면 이해가 더 빠를 것 이다. JPQL을.. Read More

JPA 필드 와 컬럼 매핑 레퍼런스

책을 맨날 들고 다닐수 없으니 정리해야겠다. 너무 피곤하다 요즘 ㅜㅜ 시작하자! @Column : 컬럼을 매핑한다. @Enumerated : enum 타입을 매핑한다. @Temporal : 날짜 타입 매핑한다. @Lob : BLOB, CLOB 타입을 매핑한다. @Transient : 해당 필드를 데이터 베이스에 매핑 시키지 않는다. @Access : JPA가 엔티티 접근하는 방식을 지정한다. @Column name : 필드와 매핑할 테이블의 컬럼 이름 insertable : 엔티티 저장시 이 필드도 같이 저장한다. false로 설정하면 데이터베이스에 저장하지 않는다. 읽기 전용일때.. Read More

javax.validation 빈 검증 (JSR 303)

javax.validation 빈 검증 (JSR 303) @NotNull, @NotEmpty, @NotBlank @Notnull 일 경우 null 허용 하지 않는다. “” 허용한다. @NotEmpty 일 경우 null 허용 하지 않는다. “” 허용하지 않는다. ” “(space) 허용한다. @NotBlank 일 경우 셋다 허용 하지 않는다. @Notnull @NotEmpty @NotBlank null 허용하지 않음 허용하지 않음 허용하지 않음 “” 허용 허용하지 않음 허용하지 않음 ” “(space) 허용 허용 허용하지 않음 실제 디비에는 모두 not null로 들어 간다. @Size size 를 지정.. Read More