스프링부트 자동구성 애플리케이션
Meta Annotation Compose Annotation Annotation을 만들때 필요 @Retention @Target ElementType.TYPE : Class, Interface, Enum @Import
2023.02.06
스프링부트 테스트
public class HelloApiTest { @Test void helloApi(){ // http localhost:8080/hello?name=Spring TestRestTemplate rest = new TestRestTemplate(); ResponseEntity res = rest.getForEntity("http://localhost:8080/hello?name={name}", String.class, "Spring"); // status 200 Assertions.assertThat(res.getStatusCode()).isEqualTo(HttpStatus.OK); // header(content-type) text/plain Assertions.assertThat(res.getHead..
2023.02.06
스프링부트 스프링컨테이너
ApplicationContext가 스프링 컨테이너 이다. public static void main(String[] args) { GenericApplicationContext applicationContext = new GenericApplicationContext(); applicationContext.registerBean(HelloController.class); applicationContext.refresh(); ServletWebServerFactory serverFactory = new TomcatServletWebServerFactory(); WebServer webServer = serverFactory.getWebServer(servletContext -> { servletConte..
2023.02.05
스프링부트 서블릿
public static void main(String[] args) { ServletWebServerFactory serverFactory = new TomcatServletWebServerFactory(); WebServer webServer = serverFactory.getWebServer(); webServer.start(); } public static void main(String[] args) { ServletWebServerFactory serverFactory = new TomcatServletWebServerFactory(); WebServer webServer = serverFactory.getWebServer(servletContext -> { servletContext.addSe..
2023.02.04
no image
스프링 부트
스프링 부트란? 스프링을 기반으로 동작하는 애플리케이션을 만드는 것 스프링이 오래되서 사라지고 스프링부트를 사용하는게 아니다. 스프링 != 스프링 부트 스프링 부트의 핵심 목표 - 빠르고 광범위한 영역의 스프링 개발 경험 제공 - 프로젝트에서 필요로 하는 다양한 비기능적인 기술 제공 - 코드 생성이나 XML 설정 필요없음 Containerless - Serverless와 유사하다. - Container - web component(servlet)는 web container(servlet container : tomcat)에 있다. - servlet container 다음에 spring container가 있다. Opinionated @RestController를 사용하는 것을 VIEW를 보는게 아니기 때..
2023.02.04