왜씀?
클라이언트의 요청이 있을 때 서버에서 어떠한 요청을 처리가 가능한지 목록을 볼 수 있음.
실행 순서
1. 구글 검색 --> spring mvc log maven dependency
2. pom.xml 에 추가
<!-- log -->
<!-- SLF4J API -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.36</version>
</dependency>
<!-- SLF4J → Log4j 바인딩 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.36</version>
</dependency>
<!-- Log4j Core -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
3. log4j.xml 파일 생성
4. log4j.xml 에 아래 코드 추가
- value = "trace" : MyBaits가 내부에서 실행하는 거의 모든 과정을 다 출력
- vlaue = "Debug" : 주로 실행된 sql과 파라미터만 보여줌
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN"
"https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd">
<log4j:configuration debug="true" xmlns:log4j='http://jakarta.apache.org/log4j/'>
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern"
value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" />
</layout>
</appender>
<logger name="org.springframework.web">
<level value="trace"></level>
</logger>
<root>
<level value="info" />
<appender-ref ref="console" />
</root>
</log4j:configuration>
5. 서버 실행시 콘솔창
6. url 요청시 콘솔창
7. 주소록 목록으로 눌렀을 때 콘솔창
2025-09-04 09:38:41 TRACE DispatcherServlet:117 - GET "/springmvc/addrbook_list.do", parameters={}, headers={masked} in DispatcherServlet 'myservlet'
2025-09-04 09:38:41 TRACE RequestMappingHandlerMapping:530 - Mapped to lx.edu.springmvc.AddrBookController#list(HttpServletRequest)
2025-09-04 09:38:41 TRACE HandlerMethod:183 - Arguments: [org.apache.catalina.connector.RequestFacade@23f5b14e]
2025-09-04 09:38:41 TRACE RequestMappingHandlerAdapter:297 - Applying default cacheSeconds=-1
2025-09-04 09:38:41 TRACE DispatcherServlet:1431 - Rendering view [org.springframework.web.servlet.view.JstlView: name [addrbook_list]; URL [/WEB-INF/views/addrbook_list.jsp]]
2025-09-04 09:38:41 DEBUG JstlView:307 - View name [addrbook_list], model {}
2025-09-04 09:38:41 DEBUG JstlView:169 - Forwarding to [/WEB-INF/views/addrbook_list.jsp]
2025-09-04 09:38:41 DEBUG DispatcherServlet:1138 - Completed 200 OK, headers={}
2025-09-04 09:38:41 TRACE DispatcherServlet:117 - GET "/springmvc/addrbook.css", parameters={}, headers={masked} in DispatcherServlet 'myservlet'
2025-09-04 09:38:41 WARN PageNotFound:1301 - No mapping for GET /springmvc/addrbook.css
2025-09-04 09:38:41 WARN PageNotFound:459 - No endpoint GET /springmvc/addrbook.css.
2025-09-04 09:38:41 DEBUG DefaultHandlerExceptionResolver:702 - Resolved [org.springframework.web.servlet.NoHandlerFoundException: No endpoint GET /springmvc/addrbook.css.]
2025-09-04 09:38:41 TRACE DispatcherServlet:1175 - No view rendering, null ModelAndView returned.
2025-09-04 09:38:41 DEBUG DispatcherServlet:1138 - Completed 404 NOT_FOUND, headers={}
'공간정보아카데미' 카테고리의 다른 글
Filter vs Interceptor vs AOP (0) | 2025.09.06 |
---|---|
Spring AOP - LogAdivce 구현 예제 (0) | 2025.09.06 |
Spring MVC (0) | 2025.09.03 |
Loosely coupled vs Tightly-coupled (0) | 2025.09.03 |
스프링에서 Bean은 어떻게 등록되고 주입될까? (XML & Annotation 비교) (0) | 2025.09.02 |