스프링 MVC 1편 -인프런 김영한/섹션6-스프링MVC - 기본 기능
1. 프로젝트 생성, 로그라이브러 (SLF4J)
샐님
2023. 7. 10. 16:29
728x90
반응형
1. https://start.spring.io/ 에서 프로젝트 생성
Jar - 항상 내장 서버 사용가능, 'webapp' 경로도 사용하지 않는다. 내장 서버 사용에 최적화되어있다.
War - 내장 서버 사용가능, 주로 외부 서버에 배포하는 목적으로 사용.
1. 로깅
- 로깅 라이브러리를 사용해서 로그를 출력
로깅 라이브러리
스프링 부트 라이브러리를 사용하면 스프링 부트 로깅 라이브러리가 함께 포함된다.
SLF4J는 인터페이스이고 그 구현체로 Logback 과 같은 로그 라이브러리를 선택하면 된다.
실무에서는 스프링 부트가 기본으로 제공하는 Logback을 대부분 사용한다.
package hello.springmvc.basic;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Slf4j // 롬북에서 log 를 쓸수 있게 제공해줌
@RestController // 반환되는 스프링이 바로 반환됨
public class LogTestController {
// private final Logger log = LoggerFactory.getLogger(getClass());
@RequestMapping("/log-test")
public String logTest(){
String name = "Spring";
System.out.println("name ="+name);
log.trace("trace log"+name); // 이렇게 사용하면 안되는 이유 : 만약 tace를 쓰지않을 경우 연산작용이 먼저일어나기때문에 메모리 리소스 사용이 일어난다.
log.trace("trace log={},{}", name ,"mvc"); // 파라미터만 넘긴다.
log.debug("debug log={}",name);
log.info("info log={}",name);
log.warn("warn log={}",name);
log.error("error log={}",name);
return "ok";
}
}
로그 레벨 설정 - 어느 단계 부터 보여지게 할건지 설정
application.properties
#전체 로그 레벨 설정(기본 info)
logging.level.root=info
#hello.springmvc 패키지와 그 하위 로그 레벨 설정
logging.level.hello.springmvc=debug
728x90
반응형