Spring33 필터(filter) vs 인터셉터(interceptor) 목차개요필터(filter)란?2-1. 필터 흐름2-2. 필터 체인2-3. 필터 인터페이스인터셉터(interceptor)란?3-1. 인터셉터 흐름3-2. 인터셉터 체인3-3. 인터셉터 인터페이스필터 vs 인터셉터4-1. 관리되는 컨테이너 영역4-2. 스프링의 예외 처리 여부4-3. Request/Response 객체 조작 가능 여부4-4. 필터(Filter)와 인터셉터(Interceptor)의 용도 및 예시결론1. 개요서블릿 필터와 스프링 인터셉터는 웹과 같이 공통 관심사항을 효과적으로 해결할 수 있는 기술이다.필터는 서블릿이 제공하는 기술이고, 인터셉터는 스프링 MVC가 제공하는 기술이다.둘다 웹과 관련된 공통 관심 사항을 처리하지만 적용되는 순서와 범위 그리고 사용범위는 다르다.2. 필터(filter).. 2023. 8. 1. 객체 지향 프로그래밍의 4대 특성 (캡! 상추다) 목차개요클래스 vs 객체객체 지향 프로그래밍이란?객체 지향 프로그래밍의 장점객체 지향의 4대 특성5-1. 캡슐화5-2. 상속5-3. 추상화5-4. 다형성결론1. 개요객체 지향의 4대 특성으로 좋은 상추가 떠오를 것이다. 흔히 앞글자를 따서 ‘캡! 상추다’ 같이 재밌는 표현을 사용한다.앞서, 간단하게 클래스와 객체를 알아보고 객체지향프로그래밍의 4대특성인 캡슐화, 상속, 추상화, 다형성에 대해 아래 내용을 차근차근 살펴보자.2. 클래스 vs 객체세상에 존재하는 모든 것은 사물, 즉 객체(Object)다.각각의 사물은 고유하다.사물은 속성을 갖는다. ex) 사람의 키, 사람의 몸무게, 자동차의 속도 등사물은 행위를 한다. (무생물은 의인화 필요)객체를 인지할 때 우리는 분류(Class) 한다.ex) 직립 보.. 2023. 6. 28. 서블릿(Servelet)이란? 목차서블릿(Servlet)이란?서블릿 특징서블릿 동작방식서블릿 컨테이너동시요청 - 멀티쓰레드서블릿 생명주기(Servlet LifeCycle)결론1. 서블릿(Servlet)이란?서블릿은 동적인 페이지를 만들기 위해 사용되는 웹 애플리케이션 프로그램위와 같이 서버에서 처리해야 하는 업무들이 많지만 서블릿을 지원하는 WAS를 사용하면 초록색 박스와 같은 의미있는 비즈니스 로직을 제외한 모든일들을 대신 처리해준다.즉, 개발자는 의미있는 비즈니스 로직에만 집중하여 개발 할 수 있게 도와준다.2. 서블릿 특징urlPatterns(/hello) 의 URL이 호출되면 서블릿 코드가 실행된다.HTTP 요청 정보를 쉽게 사용할 수 있는 HttpServletRequest를 제공한다.HTTP 응답 정보를 쉽게 사용할 수 있는.. 2023. 6. 20. spring boot의 가장 큰 장점 Auto Configuration이란? 동작 방식은? 목차Auto Configuration이란?Auto Configuration 동작 방식2-1. main 메소드2-2. SpringBootApplication2-3. EnableAutoConfiguration2-4. AutoConfigurationImportSelector2-5. 동작 정리결론1. Auto Configuration이란?스프링부트는 자동 구성(Auto Configuration) 기능을 제공하는데, 일반적으로 수많은 빈들을 자동으로 등록해주는 기능이다.이러한 기능으로 인해 반복적으로 빈을 등록하고 설정하는 부분을 줄이고 편리한 개발을 할 수 있게 도와주며 스프링 부트의 핵심적인 장점이라 할 수 있다.2. Auto Configuration 동작 방식1. main 메소드스프링 부트 프로젝트를 처음 .. 2023. 6. 16. Statement vs PreparedStatement 목차개요JDBC API 인터페이스 2-1. Statement2-2. PreparedStatement결론1. 개요Statement와 PreparedStatement 인터페이스는 모두 SQL 쿼리를 실행하는 데 사용된다. 하지만, 두 인터페이스의 차이를 보안과 성능의 관점에서 살펴보자.2. JDBC API 인터페이스두개의 인터페이스는 어떻게 동작할까?쿼리 문장 분석컴파일실행1. Statement문자열 기반 SQL 쿼리를 실행한다.public void insert(PersonEntity personEntity) { String query = "INSERT INTO persons(id, name) VALUES(" + personEntity.getId() + ", '" + personEntity.getName().. 2023. 5. 22. 단위테스트 vs 통합테스트 vs 인수테스트 목차개요단위 테스트(Unit Test)통합 테스트(Integration Test)인수 테스트(Acceptance Test)결론1. 개요테스트를 크게 3가지 분류로 나눌 수 있는데 가장 많은 범위를 차지 하고 있는 단위 테스트 통합 테스트, 인수 테스트 순으로 위 그림 처럼 나타낼 수 있다.이는 테스트 케이스의 개수라고 보면 될 것이고 코드 범위로 따지면 단위테스트가 가장 작고 인수 테스트가 가장 큰 것을 볼 수 있다.2. 단위 테스트(Unit Test)단일 서버 / 단일 프로세스 / 단일 쓰레드에서 돌아가는 테스트를 말한다.테스트에 Disk I/O가 있어서는 안되고 Blocking call이 있어서도 안된다.매우 간단하고 명확해야 하며 기본적으로 테스트를 위한 입력 값을 주어 그에 대한 함수의 출력 값이.. 2023. 5. 16. 이전 1 2 3 4 5 6 다음