본문 바로가기

ORM2

[자바 ORM 표준 JPA 프로그래밍] JPA 시작 1 데이터베이스 방언 JPA는 특정 데이터베이스에 종속적이지 않은 기술입니다. 따라서 다른 데이터 베이스로 손쉽게 교체할 수 있습니다. 그런데 각 데이터 베이스가 제공하는 SQL문법과 함수가 조금씩 다르다는 문제점이 있습니다. 예를들어 데이터 베이스마다 다음과 같은 차이점이 있습니다. 데이터 타입 : 가변 문자 타입으로 MySQL은 VARCHAR, 오라클은 VARCHAR2를 사용합니다. 다른 함수명 : 문자열을 자르는 함수로 SQL 표준은 SUBSTRING()를 사용하지만 오라클은 SUBSTR()을 사용합니다. 페이징 처리 : MySQL은 LIMIT를 사용하지만 오라클은 ROWNUM을 사용합니다. 이처럼 SQL 표준을 지키지 않거나 특정 데이터 베이스만의 고유한 기능을 JPA에서는 방언( Dialect )이.. 2022. 2. 15.
[자바 ORM 표준 JPA 프로그래밍] JPA 시작 0 Why JPA? SQL에 의존적인 개발 해결 JPA는 아래와 같은 문제점을 해결해 줍니다. 진정한 의미의 계층 분할이 어렵다. 엔티티를 신뢰할 수 없다. SQL에 의존적인 개발을 피하기 어렵다. 바로 애플리케이션에서 SQL을 직접 다룰때 발생하는 문제점을 요약한 부분입니다. 패러다임의 불일치 객체 구조를 테이블 구조에 저장하는데는 한계가 있습니다. 객체와 관계형 데이터베이스는 지향하는 목적이 서로 다르므로 둘의 기능과 표현방법도 다릅니다. 객체지향은 추상화, 캡슐화, 정보은닉, 상속, 다형성 등 시스템의 복잡성을 제어할 수 있는 다양한 장치들을 제공합니다. 이 부분에서 지금의 개발 단계에서 복잡한 애플리케이션을 다룰때 객체지향은 필수입니다. 관계형 데이터 베이스는 데이터 중심으로 구조화 되어 있고, 집합.. 2022. 2. 13.