Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

JPA에서는 실행계획이 틀어지고, 예측하기 어려운 튜닝포인트를 쿼리중심에서

OOP중심, 즉 어플리케이션에서도 해결할수 있는 포인트를 어플리케이션서 관여할수 있는 계층을 한더 추가하였습니다.

JPA PROXY/영속성 전이등을 사용하여, 어플리케이션 자체에서

DB접근을 최소화하는 전략을 택할수 있습니다있으며...


가장 간단하게 사용될수 있는방법은....

User user1 = findByName("Minsu");

User user2 = findByName("Minsu");

JPA에서는 기본적으로, 동일 트랙잰션에서 위와같은 동일처리에대해서

SELECT SQL한번만 조회를하고, 두번째는 DB 호출없이 오브젝트 재사용을 합니다.

기존에는 이러한 코드는 SELECT SQL을 두번 모두 호출하였을것입니다.


Read전략:

  • 즉시읽기( Eager loading) : 
  • 지연읽기 ( Lazy loading ) :

...

객체지향관점으로 DB병목이없는 성능좋은  어플리케이션을 만들기위해서는만들기위해서

중간에 새로 생긴 계층을 잘 활용해야하며, 더 많은 DB병행 학습 더많은 DB학습 병행 필요하다란 것입니다.  

이것은 관계형DB와 객체지향의 불일치를 맞추려고 노력하는 시간보다 분명 더 값어치 있는 시간으로 보여집니다.



참고: http://zzong.net/post/15