본문 바로가기

Spring4

[Spring] #10. 스프링 빈 조회 1. 컨테이너에 등록된 모든 빈 조회 AppConfig는 @Configuration 어노테이션이 적용된 스프링 빈 설정 파일을 의미한다. (이름 짓기에 따라 다를 수 있음) class ApplicationContextInfoTest { AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class); @Test @DisplayName("모든 빈 출력하기") void findAllBean() { String[] beanDefinitionNames = ac.getBeanDefinitionNames(); for (String beanDefinitionName : beanDefinitionNames) { .. 2023. 4. 25.
[Spring] DI, DIP, IoC, 컨테이너 1. 의존성 주입(Dependency Injection, DI) 의존성 주입은 메인 모듈이 직접 다른 하위 모듈에 대한 의존성을 주기보다는 중간에 의존성 주입자(Dependency Injector)를 두고, 이를 활용해 하위 모듈에 대한 의존성을 간접적으로 주입하는 방식이다. (인프런-CS지식의 정석 참고) 개념을 이해하고 나니 굉장히 적절한 설명이었지만, 처음 접했을 때는 이해하기 어려웠기 때문에 풀어서 설명해보려고 한다. - 의존이란? B가 변하면 A에 영향을 미치는 관계가 있다고 하자. 이 때 의존관계는 어떻게 될까? A가 B에 의존한다(A → B)고 할 수 있을 것이다. 아직은 뭐 그냥저냥 당연한 이야기처럼 느껴지지 않는가? 하지만 이 간단한 이야기는 이 글에서 첫번째로 중요한 개념이다. 이 관계.. 2023. 4. 24.
[Spring] Controller와 HTTP Request 메시지 HTML 파일 작성 hello-request-form.html GET /request/star/{name}/age/{age} 이름: 나이: 전송 GET /request/form/param 이름: 나이: 전송 POST /request/form/param 이름: 나이: 전송 POST /request/form/model 이름: 나이: 전송 POST /request/form/json 이름: 나이: 전송 Controller와 HTTP Request 메시지 - HelloRequestController.java의 전체 코드는 하단에 올려두었다. 1. @PathVariable @Controller @RequestMapping("/request") public class HelloRequestController { @G.. 2023. 4. 15.
[Spring] Controller와 HTTP Response 메시지 HTML 파일 작성 static/hello.html Hello, Spring 정적 웹 페이지!! templates/hello.html Hello, Spring templates 페이지!! templates/hello-visit.html Hello, Spring 동적 웹 페이지!! (방문자 수: ) Controller와 HTTP Response 메시지 - HelloResponseController.java 의 전체 코드는 하단에 올려두었다. 1. return "redirect:URL" @Controller @RequestMapping("/response") public class HelloResponseController { @GetMapping("/html/redirect") public String h.. 2023. 4. 14.