SpringDataJPA

SpringBoot 쇼핑몰 만들기

[일곱 번째 기록] Thymeleaf

Thymeleaf화면을 동적으로 만들 수 있는 템플릿 엔진 미리 정의된 템플릿(Template)을 만들고 동적으로 HTML 페이지를 만들어서 클라이언트에 전달하는 방식요청이 올 때마다 서버에서 새로운 HTML을 만들어 주기 때문에 SSL 서버 사이드 렌더링이라 한다. 1. 특징'natural templates'  확장자명 .htmlThymeleaf문법은 html 태그 안쪽 속성으로 사용된다. 2. thymeleaf_basicItemDto 연습용 Controller 생성 hello.example.controller.ThymeleafExController  hello.example.dto.ItemDto 클래스 생성데이터를 주고받을 때는 Entity 클래스 자체를 반환X 데이터 전달용 객체(Data Trans..

SpringBoot 쇼핑몰 만들기

[다섯 번째 기록] @Query 어노테이션

Spring Data JPA @Query SQL과 유사한 JPQL을 사용하여 복잡한 쿼리를 처리할 수 있게 도와주는 기능 간단한 쿼리는 "쿼리 메서드"를 사용해도 되지만 조건이 2가지 이상이면 되도록 @Query를 사용 SQL과 JPQL의 차이점 SQL JPQL DB의 테이블을 대상으로 쿼리 엔티티 객체를 대상으로 쿼리(객체지향 쿼리) 특정 DB에 종속적이다 (DB마다 SQL이 조금씩 다르다) 특정 DB에 종속적X (SQL을 추상화해서 사용, JPQL로 작성하면 SQL로 변환된다) 1. @Query사용(JPQL) @Query("JPQL") 쿼리 어노테이션 안에 JPQL로 작성한 쿼리문을 넣어준다. from 뒤에는 엔티티인 Item을 넣어주고 as로 i(별칭)를 지정 as는 생략 가능 별칭 생략 불가 e...

SpringBoot 쇼핑몰 만들기

[네 번째 기록] 쿼리 메서드(SpringDataJPA)

쿼리 메서드 쿼리 메서드는 스프링 데이터 JPA에서 제공하는 핵심 기능 중 하나 Repository 인터페이스에 간단한 네이밍 룰을 이용하여 메서드를 작성하면 원하는 쿼리를 실행할 수 있다.(엔티티 이름 생략 가능) 자세한 방법 : https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.query-methods 1. ItemRepository에 findByItemName 추가 2. ItemRepositoryImpl에서 findByItemName 구현 JPQL을 이용하여 findyItemName을 구현한다. 3. findByName 테스트 ItemRepositoryTest.class에 findBynameTest메서드 추가 @Sprin..

SpringBoot 쇼핑몰 만들기

[세 번째 기록] 상품 Repository 설계하기

1. ItemRepository 생성 hello.example.repository.ItemRepository.java 생성 OCP와 DIP를 지키기 위해 ItemRepository를 Interface로 생성 2. 테스트 전용 환경을 위한 application-test.properties 생성 H2 DB를 시스템의 메인 메모리에서(JVM 위에서) 구동시키는 방식으로 가볍고 빠르다는 장점이 있다. 3. ItemRepositoryImpl 생성 hello.example.repository.ItemRepositoryImpl.java 생성 ItemRepository를 구현한다. EntityManager를 생성자 주입받기 위해 제어자인 final과 Lombok의 @RequiredArgsConstructor 애노테이션..

여행하는 개발자(SOO)
'SpringDataJPA' 태그의 글 목록