CS study/spring (4) 썸네일형 리스트형 [HikariCP][DataSource]HikariDataSource/HikariPool, 그리고 동작 과정 HikariDataSource와 HikariPool HikariDataSource HikariDataSource는 DataSource 구현체이다. HikariCP를 사용하여 DataSource를 구현할 경우, 구체적인 구현체는 이 클래스가 된다. 이렇게 구현되어, Bean 인스턴스에 들어가 관리되는 것이다. 애플리케이션의 Config를 담당하기도 한다. application.properties 또는 application.yml 파일에 커넥션 풀 관련 설정(최대 커넥션 개수, 최소 유휴 커넥션 개수 등)을 지정할 때, 이 설정들은 com.zaxxer.hikari.HikariDataSource 인스턴스를 통해 관리된다. HikariDataSource 인스턴스는 HikariCP 커넥션 풀의 구성과 상태 관리를.. 인터셉터와 AOP의 차이, 인터셉터의 추가 개념 개요 이번 프로젝터에서 prehandler를 사용하여 인터셉터 기능을 사용했었고, 로그 수집을 위해 포인트컷을 사용하여 AOP(로그 수집)의 기능도 구현해봤다. 문득 드는 생각이 두 기능이 로직상 유사해 보이는데, 똑같은 거 같은데 굳이 인터셉터를 쓰는 이유가 뭘까? 정확히 말하면 인터셉터의 기능을 AOP가 전부 할 수 있지 않나? 싶어 조사해보았다. 그림으로 보는 도식도 일단 필터는 이전에 학습했던 것처럼, 스프링 영역 밖에서 서블릿의 입출력을 관리한다. Dispatcher Servlet의 호출 이전/이후로 인터셉터는 동작한다.AOP의 경우 애플리케이션 전방에 걸쳐 다양하게 작업을 적용할 수 있는 것을 확인할 수 있다. 인터셉터의 주요 메소드 preHandle: 이 메소드는 컨트롤러(핸들러) 메소드가 .. AOP의 개념과 적용하기 개요 https://csg1353.tistory.com/90 위의 포스팅처럼 elasticsearch의 logstash 로그를 수집하기 위해 AOP의 개념을 사용해 로그를 수집해보려 한다. 이를 위해서는 먼저 AOP에 대한 개념을 학습해야 할 것이다. AOP란 (Aspect-Oriented Programming) 정의 공통 기능(예: 로깅, 보안)을 핵심 비즈니스 로직에서 분리하고, 이러한 공통 기능을 필요한 위치에 적용 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화 한 것. AOP는 기존 OOP의 객체 지향적인 프로그래밍이 아닌, Aspect(관점)을 기준으로 프로그래밍하는 기법이다. 공통 기능의 관심 사항과 핵심 관심 사항 등, 객체지향으로는 분.. 인터셉터(Interceptor)란? 인터셉터. 수업을 수강하며 들었었던 개념이지만, 문득 어디에 쓰이고 어떻게 사용하는지는 알아야 될 것 같아 찾아보고 글을 쓴다. 이게 뭔데요? 인터셉터는 스프링 프레임워크에서 HTTP 요청을 가로채거나 수정, 추가 작업을 할 수 있는 구성 요소다. 이 얘기는 해당 스프링 서버로 들어오는 HTTP 요청에서 로직보다 앞세워 무언가 선행 조치를 취할 수 있다는 말이다. 내가 짠 코드보다 앞서서 전처리를 하거나.. 그렇기에 관리자 인증 등의 예시가 나왔던 것이 이해가 된다. 인터셉터는 MVC 패턴에서 Controller로 가기 전, 후에 작동해서 웹 애플리케이션의 전반적인 동작을 관리한다. Filter랑 뭐가 달라요? 필터 역시도 앞서 말했던 것처럼, 유사한 역할을 수행한다. 다만 가장 큰 차이점은 생성 위치와.. 이전 1 다음