Browse Tag: jpa

[Java]JPA란

Java Persistence API

EJB에서 구현 되었던 엔티티빈을 POJO철학을 반영하여 구현한 기술.

Persistence 란 어플리케이션의 데이터가 프로세스(JVM)보다 오래 지속 되는것을 말한다.(참고)

관계형 데이터베이스에서 받은 데이터를 Row단위로 오브젝트에 매핑 시키는 것이 ORM인데 이를 표준화 했다.

대표적으로 Hibernate가 있는데, Hibernate가 나왔기 때문에 JPA스팩이 정의된것인지 , JPA에의해서 Hibernate가 구현된것인지는 비밀.

소스로 한번 참고해보자. Spring Data JPA 로 구현한것이다.

  1. Entity 클래스 생성 – 클래스 이름이 테이블 이름

 

2. CrudRepository를 상속 받아 구현

 

3.실행

 

간단히 개념적인 부분만 코드로 적어본 것이다. 자세한 내용을 원한다면 http://jekalmin.tistory.com/entry/springdatajpa-%EA%B8%B0%EB%B3%B8-%EC%98%88%EC%A0%9C 를 참고

진짜 이런 설정 하다보면 그냥 PHP하고 싶을때가 많다. Laravel에서는 저런거 없이 ORM개념을 잘 구현하는거 같던데.. 시간 되면 PHP의 ORM과 Java의 ORM을 비교

[Java]자바 용어

자바 용어에 대해 명확히 하고 넘어 가기 위해 정리한다.

#POJO 클래스 – 프레임워크에 의존(상속)하지 클래스. 프레임워크가 빠진 순수 자바 클래스.

#AOP – 객체지향 프로그래밍의 단점을 보완하기 위한 관심사(aspect) 중심의 프로그래밍

#JPA – 관계형 데이터베이스에 접근하기 위한 표준 ORM(Object-relational mapping)

#Java 8 – Java version 8

JTA – 데이터베이스를 이용할 경우 트랜잭션을 제어하기 위한 기술 ( J2EE 스팩 )

JMS – 메시징 시스템은 응용프로그램 간에 비동기적으로 메시지를 교환할 수 있는 기술 (J2EE 스팩)