Welcome 페이지 만들기스프링 부트에 Jar를 사용하면 /resources/static/ 위치에 index.html 파일을 두면 Welcome 페이지로 처리해준다. (스프링 부트가 지원하는 정적 컨텐츠 위치에 /index.html이 있으면 된다. 로깅 간단히 알아보기앞으로 로그를 사용할 것이기 때문에, 이번시간에는 로그에 대해서 간단히 알아보자.운영 시스템에서는 System.out.println()같은 시스템 콘솔을 사용해서 필요한 정보를 출력하지 않고, 별도의 로깅 라이브러리를 사용해서 로그를 출력한다. 참고로 로그 관련 라이브러리도 많고, 깊게 들어가면 끝이 없기 때문에, 여기서는 최소한의 사용 방법만 알아본다. 로깅 라이브러리스프링 부트 라이브러리를 사용하면 스프링 부트 로깅 라이브러리(spri..
Spring/MVC1
스프링 MVC 전체 구조직접 만든 MVC 프레임워크와 스프링 MVC를 비교해 보자.직접 만든 MVC 프레임워크 구조SpringMVC 구조여러 개의 핸들러를 스프링 부트가 미리 등록한다.핸들러 어댑터 목록에서 핸들러를 처리할 수 있는 핸들러 어댑터를 조회한다.조회한 핸들러 어댑터를 통해 실제 핸들러를 호출한다.직접 만든 프레임워크 ⇒ 스프링 MVC 비교FrontController ⇒ DispatcherServlethandlerMappingMap ⇒ HandlerMappingMyHandlerAdapter ⇒ HandlerAdapterModelView ⇒ ModelAndViewviewResolver(메서드) ⇒ ViewResolver(인터페이스)MyView ⇒ ViewDispatcherServlet 구조 살펴..
프론트 컨트롤러 패턴 소개프론트 컨트롤러 도입 전입구가 없어 아무 컨트롤러나 호출할 수 있는 상황이다.그래서 클라이언트의 요청에 대한 공통 로직을 컨트롤러마다 작성해야 하는 문제점이 있다. 프론트 컨트롤러 도입 후FrontController 패턴 특징프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받는 구조다.요청을 받으면 프론트 컨트롤러가 요청에 맞는 컨트롤러를 찾아서 호출한다.즉 요청에 대한 입구를 하나로 해서 공통 처리가 가능해졌다.이를 통해 프론트 컨트롤러를 제외한 나머지 컨트롤러는 서블릿을 사용하지 않아도 된다.정리프론트 컨트롤러도 서블릿이다.그래서 컨트롤러들 앞에다가 공통 로직을 처리할 서블릿을 뒀다고 이해하면 된다.이전에는 고객의 요청이 오면 서블릿 매핑으로 직접 호출이 되었다.이제 그게 ..
서블릿과 자바 코드로 만든 HTML 예시@WebServlet(name = "memberListServlet", urlPatterns = "/servlet/members")public class MemberListServlet extends HttpServlet { private MemberRepository memberRepository = MemberRepository.getInstance(); @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { respon..