Spring 3

[Spring] 클래스명 동일할 경우 swagger 에서 구분 못하는 이슈 해결

Title Spring 에서 swagger를 사용할 경우 프로젝트 내에 클래스 명이 동일한 Class 가 2개이상 존재한다면 Example Value를 제대로 불러오지 못하는 이슈가 발생함. Text swagger에서 클래스들을 분리할때 기본적으로 패키지를 포함하지 않고 관리하기 때문에 클래스 명이 동일할경우 Example Value 및 Schema 를 제대로 불러오지 못하게 됩니다.(에러가 발생하지 않기 때문에 당황스러울 수 있음..) 해결 방법은 swagger 가 클래스를 분리할 수 있도록 패키지명을 포함한 클래스명을 인식하게 해주면 됩니다. 아래 코드를 properties 에 추가해주면 됩니다. springdoc.use-fqn=true Conclusion swagger 는 백앤드 개발자의 중요한 기..

Spring 2023.09.15

[Spring] AOP (Aspect-Oriented Programming) 란? AOP로 로깅하기

Title 실무에서 작업중에 aop를 사용해서 logging과 token 인증 작업하고 있는 프로젝트들이 있습니다. aop가 무엇인지 알아보고 사용하고 싶어서 정리해보겠습니다! Text 먼저 aop는 (AspectOrientedProgramming) 의 약자로 관점 지향 프로그래밍 이라고 합니다. 간략하게 주요관점과 부가적인관점으로 프로그래밍을 나누어서 모듈화하는 작업입니다. aop의 주요 개념을 이해하고 예제 코드를 통해 AOP에 대해 간략하게 알아보겠습니다. AOP의 주요개념 - 출처 : https://engkimbs.tistory.com/746 Aspect : 위에서 설명한 흩어진 관심사를 모듈화 한 것. 주로 부가기능을 모듈화함. Target : Aspect를 적용하는 곳 (클래스, 메서드 .. ..

Spring 2023.04.12

[Spring] 실무에서 Logger를 사용하는 이유

Spring 김영한 님 강의를 듣다 보면 지금은 공부하는 중이라 System.out.print(이하 sout)으로 콘솔로그를 찍는다고 말씀하시는 것을 자주 들을 수 있다. 실무에서는 sout 대신 logger를 사용한다고 말씀하시는데 실제 개발자가 되어 보니 sout 으로 로그를 찍지 않는다. 그 이유는 뭘까? 친절하게도 mvc1 강의에서 로깅관련 강의를 1강 추가해주셨다. 주니어 개발자 관점에서 System.out.print 를 사용하지 않고 logger 를 사용한 이유를 알아보자 로그 선언 로그를 사용하기 위해서는 아래와 같이 선언한다. private final Logger log = LoggerFactory.getLogger(getClass()); // 또는 @Slf4j : //롬복 사용 가능 로그..

Spring 2023.02.05