JPA에서 핵심적인 내용은 다음과 같다. 객체와 관계형 데이터베이스 매핑(ORM, Object Relational Mapping) 영속성 컨텍스트 우선, 영속성 컨텍스트에 대해 알아보자. 엔티티 매니저와 팩토리와 엔티티 매니저 먼저, 웹 애플리케이션에서 EntityManagerFactory와 EntityManager의 간단한 동작을 살펴보았다. 클라이언트 요청을 받으면 EntityManagerFactory는 각 클라이언트에게 EntityManager를 부여한다. 각 클라이언트는 부여받은 EntityManager를 가지고 DB에 접근한다. 영속성 컨텍스트 JPA를 이해하는데 가장 핵심적이며, "엔티티를 영구 저장하는 환경"이라는 뜻을 가지고 있다. 실제 코드에서는 EntityManager.persists(..
데이터베이스 방언 JPA는 특정 베이스에 종속하지 않는다. 각각의 데이터베이스가 제공하는 SQL 문법과 함수는 조금씩 다르다. 가변 문자 MySQL : VARCHAR Oracle : VARCHAR2 문자열 자르는 함수 SQL 표준 : SUBSTRING( ) Oracle : SUBSTR( ) 페이징 MySQL : LIMIT Oracle : ROWNUM 방언은 SQL 표준을 지키지 않는 특정 데이터베이스만의 고유한 기능이다. 각 데이터베이스 방언을 사용하기 위해 hibernate.dialect 속성에 지정한다. H2 : org.hibernate.dialect.H2Dialect Oracle 10g : org.hibernate.diaslect.Oracle10gDialect MySQL : org.hibernate..
Oracle SQL - DECODE 함수란? 오라클 쿼리에서 가장 많이 사용하는 함수 중에 하나이자, 필자도 조건을 처리할 때 자주 사용하는 함수이다. 프로그래밍을 해본 사람은 조건문 if-else 문을 생각하면 이해가 쉬울 것이다. 그렇지 않은 사람을 위해 간단히 설명하자면 해당 칼럼이 A 이면 B 값을 출력하는 것이다. DECODE(컬럼명, 조건 1, 결과 1, 조건 2, 결과 2...) DECODE(T1.MAJOR, 'SW', '소프트웨어', 'PE', '체육', 'MU', '음악', '기타 과목') 해석 T1.MAJOR 칼럼이 'SW' 이면 -> '소프트웨어' 'PE'이면 -> '체육' 'MU'이면 -> '음악' 위 3가지에 어느 하나라도 해당하지 않으면 '기타 과목'이라고 조회한다. 사용 예제 ..
* 이 포스팅은 생활코딩님의 Oracle Database 수업을 복습하고 리뷰하는 용도로 제작되었음을 알려드립니다. * Oracle DataBase - 1979년부터 지금까지 가장 인기있는 데이터베이스 Oracle DataBase Download - 다운로드 링크 : https://www.oracle.com/kr/database/technologies/xe-downloads.html Oracle DataBase 처음 사용하기 마무리 오라클 데이터베이스를 설치를 하는 과정을 배워보았습니다^^ 관련글 https://www.oracle.com/kr/database/technologies/xe-downloads.html * 이 포스팅은 생활코딩님의 Oracle Database 수업을 복습하고 리뷰하는 용도로 제..