Spring
-
테스트 수행 시, 각 phase별로 설정이 다른 경우나 특정 phase인 상황을 테스트하고 싶을 수 있다. 그런 경우 어떻게 설정하는지 알아보도록 하자. @Profile 빈이나, 컴포넌트에 프로필을 구분하여 등록할 수 있게 해주는 어노테이션 @TestConfiguration public class TestConfiguration { @Bean @Profile("beta") public DataSource DataSource() { return new Log4jdbcProxyDataSource(hikariDataSource()); } @Bean @Profile("alpha") public DataSource testDataSource() { return new HikariDataSource(hikariDa..
[Spring] @ActiveProfiles, @Profile 활용 in Test테스트 수행 시, 각 phase별로 설정이 다른 경우나 특정 phase인 상황을 테스트하고 싶을 수 있다. 그런 경우 어떻게 설정하는지 알아보도록 하자. @Profile 빈이나, 컴포넌트에 프로필을 구분하여 등록할 수 있게 해주는 어노테이션 @TestConfiguration public class TestConfiguration { @Bean @Profile("beta") public DataSource DataSource() { return new Log4jdbcProxyDataSource(hikariDataSource()); } @Bean @Profile("alpha") public DataSource testDataSource() { return new HikariDataSource(hikariDa..
2023.08.26 -
외장 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