Spring Data JPA와 QueryDSLJPA 기반 프로젝트Spring Data JPAQueryDSLSpring Data JPA지루하게 반복되는 CRUD 문제를 세련된 방법으로 해결개발자는 인터페이스만 작성한다스프링 데이터 JPA가 구현 객체를 동적으로 생성해서 주입스프링 데이터 JPA 적용 전public class MemberRepository { public void save(Member member) {...} public Member findOne(Long id) {...} public List findAll() {...} public Member findByUsername(String username) {...} }public class ItemRepository { public void ..
JPA 객체지향 쿼리연관관계 매핑과 영속성 컨텍스트 등 앞의 내용들로 기본기를 다졌고, 지금부터는 활용 단계이다.JPA와 객체지향 쿼리QueryDSLJPA는 다양한 쿼리 방법을 지원JPQLJPA CriteriaQuertDSL네이티브 SQLJDBC API 직접 사용, MyBatis, SpringJdbcTemplate 함께 사용JPQL 소개Java Persistence Query Language가장 단순한 조회 방법EntityManager.find()객체 그래프 탐색(a.getB().getC())로 get get get 하면서 계속 찾아다닐 수 없다.나이가 18살 이상인 회원을 모두 검색하고 싶다면?JPQLJPA를 사용하면 엔티티 객체를 중심으로 개발문제는 검색 쿼리검색을 할 때도 테이블이 아닌 엔티티 객체..
JPA 필드와 컬럼 매핑데이터베이스 스키마 자동 생성하기DDL을 애플리케이션 실행 시점에 자동 생성테이블 중심 -> 객체 중심으로 이동한 것이다.데이터베이스 방언을 활용해서 데이터베이스에 맞는 적절한 DDL 생성이렇게 생성된 DDL은 개발 장비에서만 사용생성된 DDL은 운영서버에서는 사용하지 않거나, 적절히 다듬은 후 사용hibernate.hbm2ddl.autocreate기존 테이블 삭제 후 다시 생성(DROP + CREATE)create-dropcreate와 같으나 종료시점에 테이블 DROP(테스트에서 사용하면 도움됨)update변경분만 반영(운영DB에는 사용하면 안됨)validate엔티티와 테이블이 정상 매핑되었는지만 확인none사용하지 않음데이터베이스 스키마 자동 생성하기 주의운영 장비에는 절대 c..
JPA 기초와 매핑Hello JPAJPA에서는 크게 중요한게 두가지가 있다. 첫번째는 객체와 관계형 데이터베이스를 중간에서 매핑하는 과정, 즉 설계 과정이 있고, 두번째는 JPA가 어떤 방식으로 동작하는지(영속성 컨텍스트)이며 이 두가지에 대해 이해 하는 것이 중요하다.H2http://www.h2database.com최고의 실습용 DB, 가볍다(1.5MB)웹용 쿼리툴 제공MySQL, Oracle 데이터베이스 시뮬레이션 기능Sequence, AUTO INCREMENT 기능 지원객체 매핑하기@EntityJPA가 관리할 객체, 엔티티라고 한다.@IdDB PK와 매핑할 필드persistence.xmljpa 설정 파일/META-INF/persistence.xml 위치javax.persistence로 시작 : JP..
JPA IntroSQL 중심적인 개발의 문제점JPA 소개1. SQL 중심적인 개발의 문제점현재 데이터베이스 세계의 헤게모니를 관계형 DB가 가지고 있다(Oracle, MySQL, ...). 객체를 관계형 DB에 관리하고 있다는 이야기이다. 관계형 DB를 사용하려면 SQL을 짜야한다. 계속. SQL 중심적인 개발을 하게되면 아래와 같은 문제점이 있다.무한 반복, 지루한 코드객체 CRUD(insert, update, select, delete)public class Member { private String memberId; private String name; ... }INSERT INTO MEMBER(MEMBER_ID, NAME) VALUES ... SELECT MEMBER_ID, NAME FROM ME..
- Total
- Today
- Yesterday
- springboot
- 알고리즘
- AWS
- Algorithm
- Spring
- IT융합인력양성사업단
- vuejs
- 정렬
- Raspberry Pi
- 시간복잡도
- 인프런
- 무선통신소프트웨어연구실
- 젠킨스
- 자바
- 한밭이글스
- vuex
- github
- 한밭대학교
- Wisoft
- ORM
- Java
- RBT
- 스프링부트
- Recursion
- Spring Boot
- 레드블랙트리
- Vue.js
- JPA
- 순환
- 라즈베리파이
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |