본문 바로가기

Spring/MVC 17

7. 스프링 MVC - 웹 페이지 만들기 보호되어 있는 글 입니다. 2024. 3. 19.
6. 스프링 MVC - 기본 기능 1. 로그 간략 정리 [장점] 1) 디버깅과 문제 해결 - 애플리케이션 실행 중에 발생하는 이벤트, 상태 및 오류에 대한 중요한 정보 제공 2) 성능 - 비동기 로깅, 로그 레벨 관리와 같은 기능으로 통해 성능에 미치는 영향을 최소화 3) 로그 레벨 관리 - ERROR / WARN / INFO / DEBUG / TRACE 세분화된 로그 레벨을 제공한다. - 로그의 중요도에 따라 다르게 처리할 수도 있고, 필요한 로그 레벨만 볼 수 있다. 4) 모니터링 - 운영(애플리케이션 동작 추적, 특정 사용자의 활동 로그) 성능(로직 실행 시간, DB 쿼리 실행 시간) 보안(로그인 시도, 인증 실패, 권한 부여 거부) 과 같이 다양한 모니터링 및 분석이 가능하다. 5) 로그 고급 기능 - 로그 파일의 rolling,.. 2024. 3. 18.
5. 스프링 MVC - 구조 이해 [스프링 MVC 구조] DispatcherServlet : Spring MVC에서 프론트 컨트롤러 패턴을 구현한 것. 모든 클라이언트의 요청을 받아들여, 해당 요청을 처리할 적절한 컨트롤러와 매핑한다. DispatcherServlet.doDispatch() - https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-1/dashboard protected void doDispatch(HttpServletRequest request, HttpServletResponse response) throws Exception { HttpServletRequest processedRequest = request; HandlerExecutionChain mapp.. 2024. 3. 16.
4. MVC 프레임워크 만들기 1. FrontController FrontController 패턴 특징 - 프론트 컨트롤러, 서블릿 하나로 클라이언트의 요청을 받음 - 프론트 컨트롤러가 요청에 맞는 컨트롤러를 찾아서 호출 - 공통 기능 처리 - 프론트 컨트롤러를 제외한 나머지 컨트롤러는 서블릿을 사용하지 않아도 됨 스프링 웹 MVC와 프론트 컨트롤러 스프링 웹 MVC의 핵심도 바로 FrontController이다. 스프링 웹 MVC의 DispatcherServlet이 FrontController 패턴으로 구현되었다. 2. 프론트 컨트롤러 도입 - V1 3. View 분리 - V2 4. Model 추가 - V3 서블릿 종속성 제거 컨트롤러 입장에서 HttpServletRequest, HttpServletResponse가 꼭 필요할까? .. 2024. 3. 14.
3. 서블릿, JSP, MVC 패턴 [기본 View] Form : 회원 등록 폼 Save : Repository에 회원을 저장 및 저장 결과 확인 List : 모든 회원 조회 1. 서블릿만으로, 동적 HTML 만들기 문제점 - 자바 코드에 HTML 코드를 만들고 있어, 매우 복잡하고 비효율적이다. 해결책 - HTML 문서에 동적으로 변경해야 하는 부분만, 자바 코드를 넣을 수 있게 한다. *템플릿 엔진 : HTML 문서에 필요한 곳만 코드를 적용해서 동적으로 변경할 수 있다. (JSP, Thymeleaf, Freemarker, Velocity...) 2. JSP 사용한, 동적 HTML 만들기 - JSP는 서버 내부에서 서블릿으로 변환되어, 실행된다. : 'JSP 문서' 라는 뜻이다. : 이 부분에는 자바 코드를 입력할 수 있다. : 이 부.. 2024. 3. 13.
2. 서블릿 1. 스프링 부트에서의 '서블릿' @WebServlet 어노테이션은 Spring MVC가 등장하기 전, Java EE, Jakarta EE에서 서블릿 기반으로 클라이언트 요청을 처리하기 위해 사용되었다. (@WebServlet → @Controller) 1) 서블릿 환경 구성 @ServletComponentScan : 서블릿 관련 어노테이션이 붙은 클래스들을 자동으로 스캔하고 서블릿 컨테이너에 등록한다. 2) 서블릿 등록 @WebServlet : 서블릿을 정의하고 등록한다. 해당 URL 패턴으로 요청이 들어오면 이 서블릿이 실행된다. +. 「resource.application.properties」 에서 logging.level.org.apache.coyote.http11=debug 웹브라우저가 서버에 .. 2024. 3. 11.