| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- dockerhub
- DI
- DLQ
- 서블릿 컨테이너
- JPQL
- Spring Data JPA
- @Transactional
- mybatis
- 페이징
- 지연 로딩
- Routing Key
- docker
- JdbcTemplate
- JWT
- CORS
- 컨테이너
- 쿠버네티스
- MSA
- Web
- AWS
- @ComponentScan
- redis
- securitycontextholderfilter
- kafka
- docker compose
- Spring
- Dead Letter Queue
- Spring Container
- JPA
- 스프링 부트
- Today
- Total
목록JPQL (4)
look-forest
JPA는 다양한 쿼리 방법을 지원한다. JPQL - em.createQuery()JPA Criteria - QueryDSL 같이 Java로 쿼리 짜는 JPA 표준 스펙. but 복잡함. 비추. QueryDSL 권장.QueryDSL - Java로 JPQL을 작성하는 JPQL 빌더네이티브 SQL - em.createNativeQuery(). JPQL로 해결할 수 없는 특정 데이터베이스에 의존적인 기능 사용 시JDBC API 직접 사용, MyBatis, SpringJdbcTemplate 함께 사용 - 영속성 컨텍스트를 적절한 시점에 강제 플러시 필요!JPQL(Java Persistence Query Language)JPA에서 원하는 쿼리를 만들 때 사용.JPA는 SQL..
JPA 설정하기 - persistence.xmlJPA 설정 파일/META-INF/persistence.xml 위치persistence-unit name으로 이름 지정javax.persistence로 시작: JPA 표준 속성hibernate로 시작: 하이버네이트 전용 속성 JPA 구동 방식엔티티 매니저 팩토리는 하나만 생성해서 애플리케이션 전체에서 공유엔티티 매니저는 쓰레드간에 공유X (사용하고 버려야 한다).JPA의 모든 데이터 변경은 트랜잭션 안에서 실행JPQL 소개 - 객체 지향 SQLJPA를 사용하면 엔티티 객체를 중심으로 개발. 검색을 할 때도 테이블이 아닌 엔티티 객체를 대상으로 검색.but 모든 DB 데이터를 객체로 변환해서 검색하는 것은 불가능. 애플리케이션이 필요한 데이터만 DB에서 불러오..
JPA 설정build.gradle//JPA, 스프링 데이터 JPA 추가implementation 'org.springframework.boot:spring-boot-starter-data-jpa' -> spring-boot-starter-jdbc 도 함께 포함 application.properties #JPA loglogging.level.org.hibernate.SQL=DEBUG -> : 하이버네이트가 생성하고 실행하는 SQL을 확인할 수 있다logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE -> : SQL에 바인딩 되는 파라미터를 확인(JPA log springboot 3이상일 경우는 logging.level.org.hibernat..
지난번에 JDBC와 JdbcTemplate 기반의 DB 접근 방법을 알아보았다. 하지만 현업에서는 JPA를 사용한다. JPA를 사용하면 개발 생산성을 크게 높일 수 있기 때문이다. JPA (Java Persistence API) 객체를 JPA에 집어넣으면, 기존(jdbc)의 반복 코드를 줄여주는 것은 물론이고, 기본적인 SQL도 JPA가 직접 만들어서 실행해준다. JDBC를 사용하면 쿼리 날리고 결과를 객체에 맵핑까지 했어야 했다. 그러나 JPA는 맵핑된 객체를 반환한다! JPA는 표준 인터페이스, Hibernate는 구현체 JPA 실행 시 쿼리문 로그를 보면 알 수 있다. JPA는 ORM 기술 Object Relational Mapping → 객체 중심의 설계로 패러다임을 전환 객체 중심으로 개발하니 ..