Develope/DataBase 20

[JPA] 객체지향 쿼리 언어

1. JPQL 가장 단순한 조회 방법 EntityManager.find() 객체 그래프 탐색 : a.getB().getC() JPA를 사용하면 엔티티 객체를 중심으로 개발 검색 시 테이블이 아닌 엔티티 객체를 대상으로 검색해야 함 검색 조건이 포함된 SQL이 필요 JPA는 SQL 을 추상화 한 JPQL이라는 객체지향 쿼리 언어 제공 SQL과 문법이 유사하지만 SQL은 아님 JPQL은 엔티티 대상 SQL은 DB대상 em.createQuery( “SELECT m FROM Member m WHERE m.USERNAME like ‘%EB%'" , Member.class ).getResultList(); 2. Creiteria 자바 코드로 JPQL 을 작성 가능 JPQL 빌더 역할 JPA 공식 기능 단점 : 너무..

Develope/DataBase 2021.09.26

[JPA] 엔티티 매핑

객체와 테이블 매핑 : @Entity, @Table 데이터베이스 스키마 자동 생성 : @Column 필드와 컬럼 매핑 : @Id 기본 키 매핑 : @ManyToOne, @JoinColumn 객테와 테이블 매핑 : @Entity, @Table 기본 생성자 필수(public/protected) final, enum, interface, innerclass 사용 불가 저장 필드에도 final 사용 불가 속성 @Entity(name = entityName) : 매핑할 엔티티 이름 @Table(name = tableName) : 매핑할 테이블 이름 데이터베이스 스키마 자동 생성 : @Column DDL을 애플리케이션 실행 시점에 자동 생성 객체 중심 DDL 생성 기능은 자동 생성 시에만 사용되고 실행 로직과는 무..

Develope/DataBase 2021.08.17

[JPA] 영속성 컨텍스트

https://www.inflearn.com/course/ORM-JPA-Basic/dashboard 자바 ORM 표준 JPA 프로그래밍 - 기본편 - 인프런 | 강의 JPA를 처음 접하거나, 실무에서 JPA를 사용하지만 기본 이론이 부족하신 분들이 JPA의 기본 이론을 탄탄하게 학습해서 초보자도 실무에서 자신있게 JPA를 사용할 수 있습니다., 본 강의는 자바 백엔 www.inflearn.com http://www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&barcode=9788960777330 자바 ORM 표준 JPA 프로그래밍 - 교보문고 스프링 데이터 예제 프로젝트로 배우는 전자정부 표준 데이터베이스 프레임 | ★ 이 책에서 다루..

Develope/DataBase 2021.08.12

[JPA] Spring + MariaDB + JPA 환경셋팅

0. docker로 mariaDB 설치 sudo docker search maria sudo docker pull mariadb:latest sudo docker images docker 이미지 실행 : sudo docker run --name mariadb -i -t -p 3306:3306 -e MYSQL_ROOT_PASSWORD=eunbi --name : 컨테이너 명 -p : 포트 포워딩 -e MYSQL_ROOT_PASSWORD : 초기 root 패스워드 지정 -v : Volume 데이터 저장 위치 docker exec -it mariadb /bin/bash MariaDB [(none)]> create databases JPA_EB MariaDB [(none)]> use JPA_EB MariaDB [..

Develope/DataBase 2021.06.23

[JPA] 1-3. ORM 이란? JPA 소개

1-3. ORM 이란? JPA 소개 https://www.inflearn.com/course/ORM-JPA-Basic/dashboard 자바 ORM 표준 JPA 프로그래밍 - 기본편 - 인프런 | 강의 JPA를 처음 접하거나, 실무에서 JPA를 사용하지만 기본 이론이 부족하신 분들이 JPA의 기본 이론을 탄탄하게 학습해서 초보자도 실무에서 자신있게 JPA를 사용할 수 있습니다., 본 강의는 자바 백엔 www.inflearn.com http://www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&barcode=9788960777330 자바 ORM 표준 JPA 프로그래밍 - 교보문고 스프링 데이터 예제 프로젝트로 배우는 전자정부 표준 데이터..

Develope/DataBase 2021.05.30

[JPA] SQL을 직접 다룰 때 발생하는 문제점

1-1. SQL을 직접 다룰 때 발생하는 문제점 https://www.inflearn.com/course/ORM-JPA-Basic/dashboard 자바 ORM 표준 JPA 프로그래밍 - 기본편 - 인프런 | 강의 JPA를 처음 접하거나, 실무에서 JPA를 사용하지만 기본 이론이 부족하신 분들이 JPA의 기본 이론을 탄탄하게 학습해서 초보자도 실무에서 자신있게 JPA를 사용할 수 있습니다., 본 강의는 자바 백엔 www.inflearn.com http://www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&barcode=9788960777330 자바 ORM 표준 JPA 프로그래밍 - 교보문고 스프링 데이터 예제 프로젝트로 배우는 전자정부..

Develope/DataBase 2021.05.29

[JPA] JPA 현황 및 분석

https://www.inflearn.com/course/ORM-JPA-Basic/dashboard 자바 ORM 표준 JPA 프로그래밍 - 기본편 - 인프런 | 강의 JPA를 처음 접하거나, 실무에서 JPA를 사용하지만 기본 이론이 부족하신 분들이 JPA의 기본 이론을 탄탄하게 학습해서 초보자도 실무에서 자신있게 JPA를 사용할 수 있습니다., 본 강의는 자바 백엔 www.inflearn.com 세상에는 참 배울게 많다. 일단 Database 카테고리에 분류해두었다. 나중에 글이 많아지면 하위카테고리를 파야지 JPA가 실무에서 어려운 이유 SQL 자동화, 수십줄의 코드가 한 두줄로 표현 가능하다. 객체와 테이블을 올바르게 매핑하고 설계하는 방법을 모른다. 튜토리얼처럼 테이블이 한두개로 단순하지 않다. 실..

Develope/DataBase 2021.05.29

[ORACLE] 동적 WHERE 쿼리 (trim prefix="WHERE" prefixOverrides="AND |OR ")

나는 주로 WHERE 1=1 을 쓴다 이런 방법도 있었군.. 출처 : http://cocomo.tistory.com/250 여러 구문 중 하나만 실행 SELECT * FROM BLOG WHERE state = #{state} AND title like #{title} AND author_name like #{author.name} - 위 구문은 잘못 사용된 예 - 만약 아무런 파라미터도 없다면 아래와 같은 쿼리가 만들어진다.SELECT *FROM BLOG WHERE - 두 번째 조건만 해당된다면 아래와 같은 쿼리가 만들어짐SELECT *FROM BLOG WHERE AND title like ‘someTitle’ - 모두 실행할 수 없는 쿼리가 만들어짐. - 때문에 trim을 사용해야 함 SELECT * ..

Develope/DataBase 2018.12.26

RefreshableSqlSessionFactoryBean

쿼리문의 변경이 일어나면 재시작하지 않어도 refresh를 자동으로 해주는 클래스 어디서 로딩하는지는 아직모름~~ 찾아보겟음~~ import java.io.IOException;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Timer;import java.util.TimerTask;import java.util.concurrent.locks.Lock;import ja..

Develope/DataBase 2018.11.21

[Oracle] tomcat XDB 로그인 / 오라클 포트 변경

서버를 돌리는데 localhost:8080 이 뜨면서 XDB 로그인을 하라고 떳다.. https://okky.kr/article/36188 https://okky.kr/article/77147 8080포트는 Oracle이 이미 쓰고잇고 9090으로 서버를 바꾸엇는데 그와동시에 properties도 미친듯이 바꿔주는데 결국 고쳐지지 않아서 오라클 포트를 바꾸는거로~~~~ 사실 아직 저게 왜뜨는지 잘 모르겟다;... 1. sql plus 실행> sqlplus /noglog 2. 관리자로 연결SQL> conn /as sysdba 3. 현재 포트확인SQL> select dbms_xdb.gethttpport() from dual; 4. 포트변경 내장프로시져 실행SQL> exec dbms_xdb.sethttppor..

Develope/DataBase 2018.10.31