반응형
- Spring은 정말 편하고 좋은 프레임워크이지만 초기 설정이 정말 어려웠습니다. 실제로 스프링을 사용하면서도 왜 이렇게 쓰는지 모르고 쓰는 경우가 많았고, 심지어 자신이 세팅한 세팅한 빈 프로젝트에 설정을 다 해놓고 새로운 프로젝트를 그 빈 프로젝트를 복사 붙여 넣기 해 프로젝트를 생성했습니다. 그에 반해 Spring boot는 기본적으로 spring framework 개발자가 해야만 하는 많은 설정들을 생략해도 괜찮습니다. 기본 logback이 설정되어 있으며 spring-boot-web-stater 같은 라이브러리에는 다수의 개발자들이 반복적으로 하던 설정들이 기본 default로 잡혀있습니다.
- 프로젝트마다 일반적으로 설정하게 되는 사항들을 이미 내부적으로 가지고 있고 개별적으로 차이가 나는 부분만 따로 설정하면 됩니다. DB Driver, 트랜잭션 등 당연히 들어가야 하는 것들은 알아서 처리됩니다.
- Spring Security, Spring data JPA와 같이 다른 Spring Framework 구성 요소를 쉽게 가져다 쓸 수 있습니다.
- Tomcat이나 Jetty, undertow, netty 등을 기본 내장할 수 있습니다. 이로 인한 다음과 같은 장점이 있습니다.
- 기본적인 설정이 이미 되어있어 별다른 설정 없이 톰캣같은 was를 실행할 수 있습니다.
- 웹 프로젝트를 띄우는 시간이 외부 Tomcat으로 띄우는 시간보다 단축됩니다.
- 이렇게 서블릿 컨테이너가 내장될 수 있으므로 프로젝트를 jar 파일 형태로 간단히 만들어 배포할 수 있습니다.
- 확실한 건 아니지만 내장 톰캣이 외장 톰캣보다 알 수 없는 장애를 내는 비율이 더 적다고 합니다.
- Spring boot가 권장 버전을 관리하기 때문에 maven pom.xml에서 의존 라이브러리의 버전을 일일이 지정하지 않아도 됩니다.
그밖에 Spring Boot를 사용할 때 개발이나 유지보수에 도움을 주는 몇가지가 있습니다.
- spring-boot-starter-actuator: 애플리케이션 추적하거나 모니터링하는 등의 기능을 사용할 수 있도록 합니다.
- spring-boot-starter-undertow, spring-boot-starter-jetty, spring-boot-starter-tomcat: 내장된 서블릿 컨테이너를 선택할 수 있도록 합니다.
- spring-boot-starter-logging: logback 을 사용해서 로깅할 수 있도록 해줍니다.
- spring-boot-starter-log4j2: Log4j2 를 사용해서 로깅할 수 있도록 해줍니다.
728x90
반응형
'웹 개발' 카테고리의 다른 글
eclipse] maven build 시 test를 빼는 방법 (0) | 2020.12.06 |
---|---|
StringBuffer와 StringBuilder (0) | 2020.12.05 |
Spring boot application 시작 시, CPU 100% 를 사용할 경우 대처 방법 (0) | 2020.11.29 |
java에서 메모리 문제가 발생할 경우 사용해볼 수 있는 메모리 옵션 (0) | 2020.11.29 |
[netty] too many open files (0) | 2020.11.22 |