본문 바로가기

도젼~/[22.11.18~] 스프링 부트 쇼핑몰 프로젝트10

20221201 TIL ※ Spring Data JPA 학습_ 쿼리 메소드 Find + (엔티티 이름) + By + 변수이름 ㅇ 쿼리 메소드 Sample 및 JPQL snippet Keyword Sample JPQL snippet Find findByLastName … where x.lastName = ?1 And findByLastNameAndFirstName … where x.lastName = ?1 and x.firstName = ?2 Or findByLastNameOrFirstName … where x.lastName = ?1 or x.firstName = ?2 Is, Equals findByLastName findByLastNameIs findByLastNameEquals … where x.lastName = ?1 B.. 2022. 12. 2.
20221130 TIL JPA, Hibernate, 그리고 Spring Data JPA의 차이점 [JPA는 기술 명세] JPA는 Java Persistence API의 약자로, 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스이다. 여기서 중요하게 여겨야 할 부분은, JPA는 말 그대로 인터페이스라는 점이다. JPA는 특정 기능을 하는 라이브러리가 아니다. 마치 일반적인 백엔드 API가 클라이언트가 어떻게 서버를 사용해야 하는지를 정의한 것처럼, JPA 역시 자바 어플리케이션에서 관계형 데이터베이스를 어떻게 사용해야 하는지를 정의하는 한 방법일 뿐이다. JPA는 단순히 명세이기 때문에 구현이 없다. JPA를 정의한 javax.persistence 패키지의 대부분은 interface, enum, Exc.. 2022. 11. 30.
20221127 TIL [상품 Entity 설계하기] 1. ENUM 클래스 : 열거체(enumeration type)으로 JDK1.5이상의 버전에서만 사용이 가능 - 클래스처럼 보이게 하는 상수 - 서로 관련있는 상수들끼리 모아 상수들을 정의하는 것 - enum 클래스 형을 기반으로 한 클래스형 선언 - enum에 정의한 타입만 값으로 가지도록 컴파일시 체크 - 새로운 열거형을 선언하면, 내부적으로 enum 클래스형 기반의 새로운 클래스형이 만들어짐 ㅇ 특징 1) 열거형으로 선언된 순서에 따라 0부터 Index값을 가진다. (순차적 증가) 2) enum 열거형으로 지정된 상수들은 모두 대문자로 선언 3) 열거형 변수들을 선언한 후 마지막에 세미콜론(;)을 찍지 않는다 4) 상수와 특정 값을 연결시킬 경우 마지막에 세미콜론(;).. 2022. 11. 27.
20221123 TIL 모르는 개념 추가 정리 * 스프링 패키지의 구조와 DAO, DTO, Entity, Repository : 스프링을 사용한 웹앱의 경우 DAO, DTO, Repository, Entity를 사용하여 데이터를 다루며 스프링부트의 경우 내장 톰캣을 통해 서블릿을 관리하고 이를 컨트롤러에서 각 어노테이션을 통해 매핑 - Domain(Entity) . 실제 DB 테이블과 매칭되는 클래스 : DB의 테이블에 존재하는 Column들을 필드로 가지는 객체 (DB와 가장 가까운 클래스) : Entity는 DB의 테이블과 1:1 대응햐며 PK를 갖음, 테이블에 가지지 않는 칼럼을 필드로 가져서는 안된다. . 최대한 외부에서 Entity클래스의 getter method를 사용하지 않도록 해당 클래스 안에서 필요한 로직 me.. 2022. 11. 24.