Spring/etc
-
외장 Tomcat을 이용하여서 운영하던 서비스를 Spring Boot에서 제공하는 내장 Tomcat으로 전환하기로 하였다. 그 과정에서 Tomcat server.xml 설정의 Connector 내용을 spring boot 설정으로 옮기게 되었다. 각 설정들의 값들 중에 connection, thread에 해당하는 값들을 살펴보도록 하자. Thread server.tomcat.threads.max: 200 server.tomcat.threads.min-spare: 10 해당 값들은 application.yml에 "server.tomcat.." 설정을 하지 않았을 때의 default값들이다. ( https://docs.spring.io/spring-boot/docs/current/reference/html/..
[Tomcat] connection, thread, keep-alive 설정 살펴보기외장 Tomcat을 이용하여서 운영하던 서비스를 Spring Boot에서 제공하는 내장 Tomcat으로 전환하기로 하였다. 그 과정에서 Tomcat server.xml 설정의 Connector 내용을 spring boot 설정으로 옮기게 되었다. 각 설정들의 값들 중에 connection, thread에 해당하는 값들을 살펴보도록 하자. Thread server.tomcat.threads.max: 200 server.tomcat.threads.min-spare: 10 해당 값들은 application.yml에 "server.tomcat.." 설정을 하지 않았을 때의 default값들이다. ( https://docs.spring.io/spring-boot/docs/current/reference/html/..
2023.07.01 -
목차 Dispatcher Servlet에 대해서 간단하게 소개 대략적인 호출 구조 구체적인 Method Call을 보여주는 Sequence Diagram Dispatcher Servlet Spring에서 제공하는 Front Controller 역할을 하는 Servlet으로 Client의 Request에 대해 실제 처리하는 method를 호출해준다. 그러면, Client로 부터 요청이 왔을 때, Spring의 Dispatcher Servlet은 어떠한 과정을 거쳐서 응답을 주는지 알아보자. 대략적인 구조 Client -> Dispatcher Servlet : url로 접근하여 정보를 요청 Dispatcher Servlet -> Handler Mappings : 해당 요청을 매핑한 컨트롤러가 있는지 탐색 :..
[Spring] Dispatcher Servlet (Request, Response) 동작 프로세스목차 Dispatcher Servlet에 대해서 간단하게 소개 대략적인 호출 구조 구체적인 Method Call을 보여주는 Sequence Diagram Dispatcher Servlet Spring에서 제공하는 Front Controller 역할을 하는 Servlet으로 Client의 Request에 대해 실제 처리하는 method를 호출해준다. 그러면, Client로 부터 요청이 왔을 때, Spring의 Dispatcher Servlet은 어떠한 과정을 거쳐서 응답을 주는지 알아보자. 대략적인 구조 Client -> Dispatcher Servlet : url로 접근하여 정보를 요청 Dispatcher Servlet -> Handler Mappings : 해당 요청을 매핑한 컨트롤러가 있는지 탐색 :..
2022.10.13 -
Spring에서 제공하는 의존성 주입 방식은 크게 3가지이다. 필드 주입 ( Field Injection ) 수정자 주입 ( Setter or Method Injection ) 생성자 주입 ( Constructor Injection ) 이러한 종류들 중에서 Spring에서는 생성자 주입 방식을 권장하고 있다. 그러면 이러한 방식을 권장하는 이유를 살펴보자. 필드, 수정자 주입 우선 필드, 수정자 주입의 경우에는 @Autowired라는 어노테이션을 사용한다. public class PostsService { @Autowired private PostsRepository postsRepository; // or @Autowired public void setPostsRepository(PostsReposit..
[Spring] DI(의존성주입)시 생성자주입과 @AutowiredSpring에서 제공하는 의존성 주입 방식은 크게 3가지이다. 필드 주입 ( Field Injection ) 수정자 주입 ( Setter or Method Injection ) 생성자 주입 ( Constructor Injection ) 이러한 종류들 중에서 Spring에서는 생성자 주입 방식을 권장하고 있다. 그러면 이러한 방식을 권장하는 이유를 살펴보자. 필드, 수정자 주입 우선 필드, 수정자 주입의 경우에는 @Autowired라는 어노테이션을 사용한다. public class PostsService { @Autowired private PostsRepository postsRepository; // or @Autowired public void setPostsRepository(PostsReposit..
2022.10.12 -
Unchecked Exception 발생 시 처리하는 방법이 다양하게 존재합니다. 그중에서도 @ControllerAdvice @ExceptionHandler를 조합해서 사용하는 방법을 가장 많이 사용하는 것 같습니다. 해당 방법에 대해서 정리해보도록 하겠습니다. @ControllerAdvice ControllerAdvice는 여러 컨트롤러에 대해 전역적으로 ExceptionHandler를 적용해줍니다. ControllerAdvice 어노테이션에는 @Component 어노테이션이 있어서 ControllerAdvice가 선언된 클래스는 스프링 빈으로 등록됩니다. 에러를 핸들링하는 클래스를 만들어 @ControllerAdvice 어노테이션을 붙여주면 에러 처리를 위임할 수 있습니다. 범위 설정 @Control..
[Spring] 예외처리 @ExceptionHandler @ControllerAdviceUnchecked Exception 발생 시 처리하는 방법이 다양하게 존재합니다. 그중에서도 @ControllerAdvice @ExceptionHandler를 조합해서 사용하는 방법을 가장 많이 사용하는 것 같습니다. 해당 방법에 대해서 정리해보도록 하겠습니다. @ControllerAdvice ControllerAdvice는 여러 컨트롤러에 대해 전역적으로 ExceptionHandler를 적용해줍니다. ControllerAdvice 어노테이션에는 @Component 어노테이션이 있어서 ControllerAdvice가 선언된 클래스는 스프링 빈으로 등록됩니다. 에러를 핸들링하는 클래스를 만들어 @ControllerAdvice 어노테이션을 붙여주면 에러 처리를 위임할 수 있습니다. 범위 설정 @Control..
2022.10.07