11.Spring. annotation의 활용

-JDBC를 통해 DB를 사용하려면, Connection 타입의 DB 연결 객체가 필요하다.
-엔터프라이즈 환경에서는 각 요청마다 Connection을 새롭게 만들고 종료시킨다.
-애플리케이션과 DB사이의 실제 커넥션을 매번 새롭게 만드는 것은 비효율적이고 성능저하
-풀링(pooling) 기법 사용
정해진 개수의 DB Connection Pool에 준비하고 애플리케이션 요청때 마다 꺼내서 할당하고 돌려받아 pool에 저장.
-Spring에서는 DataSource를 하나의 독립된 빈으로 등록하도록 강력하게 권장.
-엔터프라이즈 시스템에서는 반드시 DB 연결 풀 기능을 지원하는 DataSource를 사용해야 한다.

요약

쿼리를 보내는것보다 연결하는데 더 많은 자원이 사용된다. 그래서 사용한는것이 Connection Pool이다. 이는 커넥션을 만들어 놓고 요청이 있을 때 마다 하나 빼서 쓰고 반납하고 쓰고 반납하고 하는 방식이다. 이를 통해 성능이 좋아진다.
여기서 Connection Pool을 Datasource라 한다.

JREBEL의 활용

소스코드가 변경되면 서버를 다시시작해야되는 번거로움이 존재하지만 JREBEL로 극복 가능하다
https://my.jrebel.com/ 에 접속하여 가입하고 라이센스키를 받아서 활용하자

Window-Preferences-JRebel에 접속해서 설정하자!

인터셉터

스피링에서 서블릿 디스패처와 컨트롤러 사이에 존재하여 가로채는 역할을 한다. Servlet의 앞과 뒤에서 HTTP Request와 HTTP Response를 가로채는 필터와 유사하며 Interceptor를 구현하기 위해서는 HandlerInterceptor 인터페이스를 구현하여야 한다.

Share