본문 바로가기

Spring33

Spring - 로깅(Logging) 로깅(Logging) 이란? 로깅이란 시스템의 작동 정보인 로그(Log)를 기록하는 행위를 말한다. 시스템이 작동할 때 시스템의 작동 상태의 기록과 보존, 이용자의 습성 조사 및 시스템 동작의 분석 등을 하기 위해 작동 중의 각종 정보를 기록해둘 필요가 있는데, 이 기록을 만드는 것을 로깅이라 한다. 스프링부트에서의 로깅 라이브러리 스프링부트 라이브러리를 사용하면, 스프링 부트 로깅 라이브러리(spring-boot-starter-loggint)가 함께 포함된다. 스프링 부트 로깅 라이브러리는 기본적으로 다음 라이브러리를 사용한다. SLF4J Logback 로그 라이브러리는 Logback, Log4J, Log4J2 등 수 많은 라이브러리가 있는데, 이것들을 통합해서 인터페이스로 제공하는 것이 SLF4J 라.. 2023. 7. 20.
SpringMVC - 실용적인 방식 이전 SpringMVC 포스팅들에 이어지는 내용 입니다. MVC 프레임워크 만들기 (3) 에서는 ModelView를 개발자가 직접 생성해서 반환했기 때문에, 매우 불편했었다. 스프링 MVC는 개발자가 편리하게 개발할 수 있도록 수 많은 편의 기능을 제공한다. 아래의 방식은 실제로 실무에서 사용하는 방식이다. 자 이제 아래의 코드를 살펴보자. import hello.servlet.domain.member.Member; import hello.servlet.domain.member.MemberRepository; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframew.. 2023. 7. 19.
SpringMVC - 컨트롤러 통합 SpringMVC - 시작하기(@RequestMapping) 에 이어지는 포스팅 입니다. 이전까지 @RequestMapping을 이용해서, 컨트롤러를 만들어 보았다. 하지만 이전 코드들은 개별 컨트롤러 클래스를 가지고 있어서, 매번 새로운 컨트롤러 클래스를 만들어주고 동일한 코드들이 중복되는 불편함이 있다. 하지만 @RequestMapping 애너테이션을 이용하면 분산된 컨트롤러를 통합 시켜줄 수 있다. 방법은 간단하다. 아래의 코드를 살펴보자. import hello.servlet.domain.member.Member; import hello.servlet.domain.member.MemberRepository; import org.springframework.stereotype.Controller; .. 2023. 7. 19.
SpringMVC - 시작하기(@RequestMapping) 이제 본격적으로 SpringMVC을 사용하여 코드로 적용해보자. @RequestMapping 스프링은 애노테이션을 활용한 매우 유연하고, 실용적인 컨트롤러를 만들었다. 그것이 바로 @RequestMapping 애노테이션이다. @RequestMapping은 아래의 어댑터와 매핑의 앞글자를 따서 만든 이름인데, 이것이 바로 스프링에서 주로 사용하는 애노테이션 기반의 컨트롤러를 지원하는 핸들러 매핑과 어댑터이다. RequestMappingHandlerMapping RequestMappingHandlerAdapter 그렇다면, 이제 해당 애노테이션 기반의 컨트롤러 코드를 적용해보자. 프레임워크 만들기와 SpringMVC의 이전 포스팅들의 코드들에 @RequestMapping 기반의 스프링 MVC 컨트롤러를 변경.. 2023. 7. 19.
SpringMVC - ViewResolver 이번 포스팅에서는 스프링 MVC의 뷰 리졸버에 대해서 알아보자. 우선 이전 SpringMVC - 핸들러 매핑과 핸들러 어댑터 편에서 사용한, OldController를 아래와 같이 코드를 추가해주자. OldController import org.springframework.stereotype.Component; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.Controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @Component("/springmvc.. 2023. 7. 19.
SpringMVC - 핸들러 매핑과 핸들러 어댑터 이번 포스팅에서는 SpringMVC에서 구현되어있는 핸들러 매핑과 핸들러 어댑터가 어떤 것들이 있는지 알아보자. 지금은 전혀 사용하지 않지만, 과거에 주로 사용했던 스프링이 제공하는 간단한 컨트롤러로 핸들러 매핑과 어댑터를 이해해보자. Controller 인터페이스 - 과거 버전 스프링 컨트롤러 org.springframework.web.servlet.mvc.Controller public interface Controller { ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception; } 과거에는 스프링도 위와 같은 딱딱한 형식의 컨트롤러를 제공했다. 참고로, 위 Control.. 2023. 7. 19.