ORM
==ORM은 object Relational Mapping 으로 관계형 데이터베이스를 OOP언어로 변환해주는 기술입니다. 비즈니스 코드가 DB테이블에 바로 접근하게 도와줍니다.개발자는 비즈니스코드(개발자 코드)에 집중할 수 있습니다.
JPA
- ==JPA는 ORM을 위해서 자바에서 제공하는 API 입니다. 자바 객체와 DB테이블을 매핑하는데요. 구현체로는 하이버네이트가 있습니다.
ORM, JPA, Hibernate 장단점
- 장점이 너무 커서 단점이 있어도 사용함.
- 장점
- query 파싱 등 과정 없어져서 비즈니스 코드에 집중가능
- 객체 중심 개발가능
- 메소드 호출 하다로 sql 쿼리 안만들어도 생산성 향상됌
- DB에 의존하지 않게됌. mysql 쓰다가 oracle쓸 수 있음. 쿼리가 달라도 다 맞춰줌.
- 디비인젝션 방지
- 단점
- 성능이 좀 느림
- 아주 복잡한 쿼리는 하이버네이트로 구현 못함