1. EnitityManager
2. JPQL 활용
3. Criteria API
4. MyBatis - https://kakaroo.tistory.com/16?category=1001571
JPQL 쿼리
<MyDataDaoImpl.java> 구현해야함
public List<MyData> find(String fstr) {
Query query = entityManager.createNameQuery("findWithName").setParameter("fname", "%" + fstr + "%");
return query.getResultList();
}
<MyData.java>
@NamedQuery(
name="findWithName",
query="from Mydata where name like :fname"
)
or
<MyDataRepository.java> 선언만 하면 됨 p.238,256
@Query("from Mydata where name like :fname")
public List<MyData> findWithName(@Param("fname") String name);
Repository이용 @Query
@Query("SELECT d from MyData d ORDER BY d.name")
List<MyData> findAllOrderByName();
- DB 접근자
JPA : Repository (extends JpaRespository<Entity class, PK 타입>) => 기본적인 CRUD 메소드가 자동으로 생성됨
Entity 클래스와 Entity Repository는 동일 패키지에 위치해야한다.
Mapper : Dao
Criteria API 를 사용한 검색
JPA에는 criteria api라는 기능이 있어서 자바다운 데이터베이스 처리를 가능하게 한다.
Ref : 도서 - 스프링 부트 프로그래밍 입문
'Web' 카테고리의 다른 글
2 - Spring Boot - JPA 구현 by Spring Web Layer (0) | 2022.02.07 |
---|---|
1 - Spring Boot - Start Application<IntelliJ-Gradle> (0) | 2022.02.07 |
Spring Boot - Thymeleaf (0) | 2022.02.05 |
Spring Boot 기본 (공사중..) (0) | 2022.02.05 |
3. Spring Boot - MyBatis (0) | 2022.02.03 |