728x90 반응형 Study/SpringBoot32 [Spring Boot] JPA 동적 검색 (QueryDsl) # JPQL JPQL(Java Persistence Query Language)는 JPA(Java Persistence API)의 일부로 정의된 플랫폼에 독립적인 객체지향 쿼리 언어이다. JPQL은 관계형 데이터베이스의 엔티티에 대한 쿼리를 만드는데 사용된다. JPA는 엔티티 객체를 중심으로 개발하므로 SQL을 사용하지 않는다. 하지만 검색쿼리를 사용할 때는 SQL을 사용해야 한다. SQL의 영향을 받아 SQL과 비슷하나, DB 테이블에 직접 접근하는 것이 아닌 JPA 엔티티에 동작한다. 그래서 JPQL의 쿼리에는 테이블이 아닌 엔티티에서 사용되는 컬럼의 이름을 사용해야 한다. * SQL : 데이터베이스 테이블을 대상으로 쿼리함 * JPQL : 엔티티 객체를 대상으로 쿼리함 # JPQL로 검색을? 웹 어.. 2022. 5. 16. [Spring Boot] @NotNull, @NotEmpty, @NotBlank 의 차이점 및 사용법 @NotNull, @NotEmpty, @NotBlank 의 차이점 앞서 공통적으로 사용하는 방법 및 예외처리에 대해서 알아봤습니다. @NotNull & @NotEmpty & @NotBlank 는 사용법은 매우 유사하지만 중요한 차이가 있습니다. @NotNull 우선 @NotNull 은 위에 살펴본 것 처럼 이름 그대로 Null만 허용하지 않습니다. 따라서, "" 이나 " " 은 허용하게 됩니다. 그렇기 때문에 만약 "" (초기화된 String) )이나 " " (공백) 을 허용하지 않는다면 사용해서는 안됩니다. Null 이 들어오게 되면, 로직에 예상치 못한 오류가 발생하거나 문제가 생길 경우 사용해야 합니다. 즉, 초기화나 공백의 값이 들어와 저장은 되야하지만 Null 로 들어온 경우 오류가 나는 변수를.. 2022. 5. 10. Spring-boot JPA 어노테이션 @Entity, @Table, @Column, @Id @Lombok 객체 - 테이블 맵핑 : @Entity, @Table 필드 - 컬럼의 팹핑 : @Column 기본키의 맵핑 : @Id 조인 맵핑 : @ManyToOne, @JoinColumn @Entity @Entity 어노테이션을 클래스에 선언하면 그 클래스는 JPA가 관리한다. 그러므로 DB의 테이블과 Class(VO, DTO)와 맵핑한다면 반드시 @Entity를 붙여주어야 한다. @Entity가 붙은 클래스에는 다음 제약사항이 필요하다. 필드에 final, enum, interface, class를 사용할 수 없다. 생성자중 기본 생성자가 반드시 필요하다. @Entity의 속성 1. name : 엔티티 이름을 지정합니다. 기본값으로 클래스 이름을 그대로 사용한다. @Table @Table 어노테이션은 맵핑할 테이블.. 2022. 5. 9. 스프링부트 시작부터 JSP 설정 실행까지 정리글 해당 글은 스프링부트 웹 프로젝트 생성부터 작성한 JSP 파일을 인터넷으로 확인하는 과정인데 먼저 스프링부트가 이클립스에 설치되어 있지 않다면 아래 글을 참고해서 설치해 주고 이클립스에 스프링부트 설치방법 이클립스에 스프링부트를 설치하기 위해서는 상단의 Help 클릭 후 > Eclipse Marketplace를 눌러주자 이후 검색창에 STS를 입력해주면 Spring Tools 3 Add-On for Spring Tools 4가 보이는데 우측 하단의 instal.. wakestand.tistory.com 우클릭 > New > Project를 눌러주자 이후 Spring Starter Project를 선택한 후 바로 Next를 눌러주고 Web > Spring Web을 선택해 준 후 Finish를 눌러준다 위와.. 2022. 1. 5. 이전 1 ··· 3 4 5 6 7 8 다음 728x90 반응형