본문 바로가기
728x90
반응형

Java/Spring7

logback to log4j2 Spring boot를 사용하면서, logback에서 log4j2로 변경하게 되었습니다.  org.springframework.boot spring-boot-starter-web ${spring.version} org.springframework.boot spring-boot-devtools ${spring.version}다음과 같이 Spring boot를 사용하고 있는 상황에서 logback으로 프로젝트를 진행하고 있었습니다. 그러다 log4j2를 사용하게 변경하고자 하여, Spring boot starter web의 의존성중 하나인 spring boot starter logging을 exclusion처리한 후, log4j2를 직접 가져와 사용하기로 하였습니다.  org.springframework.b.. 2025. 2. 23.
Service에서 Argument 사용하기 Spring boot의 main을 통해 argument를 입력받는 경우가 발생할 수 있습니다.public class Main { public static void main(String[] args){ SpringApplication.run(SpringBootBoilerPlateApplication.class, args); }}이럴 경우 args를 입력받고 시작하는데, 해당 args를 활용하는 함수를 필요로 하는 경우가 발생합니다. public class Main { public static void main(String[] args){ // args를 필요로 하는 경우 SpringApplication.run(SpringBootBoilerPlateApplication.class,.. 2024. 8. 7.
Spring boot에서의 logback 설정 Spring boot에서는 logback위치를 java-resource의 위치에 있는 logback.xml 위치를 보고 log 위치를 지정합니다. 그러나 이렇게 진행하는 경우 ${LOG_PATH}와 같은 변수가 들어가 있는 경우, 이를 인식하지 못하는 현상이 발생합니다.물론 이런식으로 logback.xml의 옵션으로 LOG_PATH를 지정할 수 있습니다. 그렇지만, 만약에 LOG_PATH를 특정 파일의 값으로 읽어와 지정하는 경우에는 해당 방식을 사용할 수 없습니다.그래서 다음과 같은 방식으로 LOG_PATH에 대한 값을 소스코드로 입력할 수 있습니다.LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory();logger.. 2024. 8. 5.
예외 처리 방법 Spring boot를 사용하시면, 다음과 같은 방법들로 api 요청을 보냅니다.@PostMapping({"/api"})@GetMapping({"/get/api"})만약 다음과 같이 요청이 가능한 api가 있을 때, 없는 api를 요청할 경우, 500에러를 발생하게 됩니다. 해당 에러에 대하여 특정 반환값 or 페이지를 출력하기 위해선 500 에러를 잡아서 다른 response를 보내야 합니다.@ControllerAdvicepublic class GlobalExceptionHandler { @ExceptionHandler(HttpMessageNotReadableException.class) public ResponseEntity handleHttpMessageNotReadableExceptio.. 2024. 7. 7.
반응형