간단이론정리/SPRING 2

ORM, JPA, Hibernate 그리고 Spring Data JPA

1. ORM (Object - relational mapping)테이블을 객체 지향적으로 사용하기 위한 기술이며 객체와 DB 테이블이 매핑을 이루는 것을 의미한다.JPA에서 DB 접근 시 직접 쿼리를 만들지 않고 메소드로 호출 하기 때문에 사용하기에 따라 굉장히 편리 할 수 있다. 장점별도의 SQL을 사용하지 않아도 개발이 가능하다.재사용 및 유지보수 편의성을 기대 할 수 있다.DBMS에 대한 종속성이 줄어든다.단점완벽한 ORM으로 서비스를 구현하기에는 한계가 있다.충분한 이해가 없을 경우 문제가 발생 할 수 있고 해결이 힘들 수 있다. 2. JPA (Java Persistent API)자바 진영에서 정리한 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스이다. 즉, 기술명세인 것이다.JPA를 사용..

Inversion of Control, 제어의 역전

IoC는 주로 면접에서 많이 묻는 내용이 아닐까. DI(Dependency Injection, 의존성 주입)와 함께 말이다.두 가지 내용을 가볍게 정리하여 살펴보고자 한다. 1. IoC- 기존 개발 방식에서 개발자가 직접 흐름을 제어하지 않고 프레임워크or라이브러리가 대신 제어 하는 것.public class Coffee { private Americano americano; public Coffee() { americano = new Americano(); }}커피 클래스는 아메리카노를 필드로 갖고 생성자 내부에서 직접 생성하여 초기화 한다.개발자가 직접 관리하는 것이다.public class Coffee { @Autowired private Americano americ..