빅토리 코딩
article thumbnail
Srping AOP 설정(LogAspect)
Spring 2023. 3. 28. 10:40

개요 mapping 되어있는 post, get으로 들어올 때 @RequestParam 또는 @RequestBody로 들어오는 데이터를 받아오는데 들어오는 것을 무조건 로그로 찍어내는 AOP를 만들러 보았다. 설명 - AOP AOP는 Aspect-Oriented Programming의 약자로 여러 부분에서 공통적으로 발생하는 작업 (cross-cutting concerns)을 모듈화하여 코드의 중복을 줄이고 유지 보수성을 향상시키는 프로그래밍 기법이다. 예를 들어, 로깅, 보안, 트랜잭션 처리 등은 어플리케이션의 여러 부분에서 공통적으로 발생하는 작업으로, AOP를 이용하면 이러한 작업들을 모듈화하여 코드의 중복을 피할 수 있다. 핵심 개념 1. Aspect : 어플리케이션에서 공통적으로 발생하는 작업을 ..

article thumbnail
Spring Validation (@Valid, @Validated)
Spring 2023. 3. 17. 16:08

전 프로젝트를 할 때 우리가 맡은 부분은 화면단이 었다. 안정화 기간에 오류가 나는것을 수정할려고 찾아보면 api단에 데이터를 정확하게 안준다는것었다... 확인결과 우리쪽에서 api로 던질때 Validation 체크가 정확하게 되어 있지 않아 빈값이나 이상한값이 넘어 갔는데 api에서 그걸 그대로 받아서 저장한것이다.... 그러면서 나는 오류가 정말 많았다.. 이 사태로 느낀점은 Validation는 화면단도 확인하고 뒷단도 무조건 확인해야한다는것을....,,, 해서 spring Validation에 대해서 알아본다. 개요 Spring Validation은 Spring Framework에서 유효성 검사 기능다. Spring Validation을 사용하면 데이터가 정확한지 검증하고 이로 인해 예상치 못한 ..

article thumbnail
Swagger 3.x 와 spring doc [2]
Spring 2023. 3. 15. 16:16

Annotation 설명 Target은 해당 annotation을 사용할 수 있는 곳이다. CONSTRUCTOR = 생성자 FIELD = 필드 선언 LOCAL_VARIABLE = 로컬 변수 METHOD = 메서드 PARAMETER = 파라미터 PACKAGE = 패키지 TYPE = 클래스, 인터페이스 1. @Tag • swagger-ui에서 탭 설정을 하는 annotation이다. • Target : METHOD, TYPE • Parameter - name : 탭의 이름을 설정한다. 같은 이름을 가지고 있는 Tag들이 한 탭에 묶여서 나온다. - description : 해당 탭에 대한 설명 java) @Slf4j @RestController @RequestMapping("/path1") public cl..

article thumbnail
Swagger 3.x 와 spring doc [1]
Spring 2023. 3. 14. 15:31

Swagger, Springdoc api개발을 위해 Swagger를 사용했다... 옛날 버전의 swagger와 springfox를 이용했는데 이번에 전부 최신버전으로 업 하자는 말이 나와서 찾아보니 최근에는 springfox 말고 springdoc를 사용한다는 것을 알았다. 해서 해당 설정을 해볼 것이다.! 설명 RESTful API의 개발과 문서화를 도와주는 프레임워다. Swagger는 API를 작성하는 데 사용되는 다양한 언어와 프레임워크에 대한 지원을 제공하며, API의 문서화를 자동화하여 개발자와 사용자 간의 협업을 용이하게 한다. 둘은 같은 웹 인터페이스(Swagger UI)를 제공하고 Springdoc은 Spring framework에서 사용하기 쉽도록 만들어진 라이브러리이다. 구현 1. po..

article thumbnail
Spring Cloud Gateway
Spring/Spring Cloud 2023. 3. 8. 17:04

개요 Spring Gateway는 Spring 프레임워크를 기반으로 만들어진 API Gateway입니다. API Gateway는 마이크로서비스 아키텍처에서 여러 개의 서비스를 연결하고, 클라이언트로부터 요청을 받아 각 서비스에 분배하는 역할을 합니다. 이를 통해, 마이크로서비스 아키텍처에서는 서비스 간의 직접적인 통신을 피하고, 대신 API Gateway를 통해 간접적으로 통신할 수 있습니다. 특징 1. 유연한 라우팅 규칙 다양한 라우팅 규칙을 적용하여 요청을 처리할 수 있습니다. 이를 통해 요청의 경로, 메서드, 헤더 등 다양한 조건에 따라 서비스를 선택할 수 있습니다. 2. 다양한 필터 요청/응답 필터를 제공하여 요청을 처리할 때 다양한 기능을 적용할 수 있습니다. 예를 들어, 인증/인가, 요청/응답..

article thumbnail
Spring Cloud Eureka
Spring/Spring Cloud 2023. 3. 8. 17:04

개요 Spring Cloud Eureka는 서비스 디스커버리를 위한 라이브러리입니다. 이를 사용하면 마이크로서비스 아키텍처에서 각 서비스의 위치와 상태를 관리할 수 있습니다. Spring Cloud Eureka는 서비스 디스커버리 서버와 클라이언트로 구성됩니다. Eureka 서버는 각 서비스의 위치와 상태 정보를 저장하고, Eureka 클라이언트는 자신을 등록하고 주기적으로 서버에 상태를 보고합니다 주요 기능 1. 서비스 등록 및 발견 Eureka 클라이언트는 서비스를 등록하고, Eureka 서버는 등록된 서비스 정보를 저장합니다. 다른 서비스에서는 Eureka 서버에서 서비스 정보를 조회하여 해당 서비스를 호출할 수 있습니다. 2. 서비스 상태 확인 Eureka 클라이언트는 주기적으로 서비스 상태를 E..

article thumbnail
Spring Cloud Config
Spring/Spring Cloud 2023. 3. 8. 17:04

개요 Spring Cloud Config는 마이크로서비스 아키텍처에서 설정 정보를 중앙 집중식으로 관리하기 위한 서비스입니다. 이를 통해 설정 정보를 수정하고 배포하는 과정을 단순화하고, 마이크로서비스 간에 설정 정보를 공유할 수 있습니다. 특징 1. 중앙 집중식 설정 관리 Spring Cloud Config는 설정 정보를 중앙 집중식으로 관리합니다. 이를 통해 모든 마이크로서비스에서 동일한 설정 정보를 사용할 수 있습니다. 또한 설정 정보를 수정하면 모든 마이크로서비스에서 변경된 설정 정보를 사용할 수 있습니다. 2. 다양한 데이터 소스 지원 Spring Cloud Config는 다양한 데이터 소스를 지원합니다. Git, Subversion, JDBC 등 다양한 데이터 소스를 이용하여 설정 정보를 가져..

article thumbnail
Spring Cloud MSA
Spring/Spring Cloud 2022. 1. 25. 21:28

MSA MSA는 서비스를 작은 단위로 분해하여 각각의 서비스가 독립적으로 실행될 수 있도록 구성하는 아키텍처입니다. 이렇게 분해된 각각의 서비스는 다른 서비스와 연동하여 비즈니스 로직을 수행하며, 필요한 경우에는 외부 시스템과 연동합니다. MSA를 적용하면, 서비스를 작은 단위로 분해하여 개발 및 배포가 용이해지며, 확장성이 높아지고 장애 발생 시 서비스 간 영향도를 최소화할 수 있습니다. spring cloud Spring Cloud는 마이크로서비스 기반의 애플리케이션을 개발하기 위한 프레임워크입니다. Spring Cloud는 여러 가지 마이크로서비스 아키텍처 관련 기술을 통합하여 사용할 수 있게 해 줍니다. Spring Cloud를 이용하면 마이크로서비스 아키텍처를 구축하고, 서비스 디스커버리, 서비..

검색 태그