728x90 반응형 springboot25 [SpringBoot] 선언형 HTTP 클라이언트 OpenFeign이란? 마이크로서비스 아키텍처에서 서비스 간 통신은 필수입니다. 하지만 RestTemplate 또는 WebClient로 매번 HTTP 요청을 구성하고 응답을 처리하는 것은 번거롭고 중복이 많습니다. 1. OpenFeign 개요 OpenFeign은 인터페이스 기반으로 외부 HTTP API를 간단하고 타입 안전하게 호출할 수 있게 도와주는 선언형(Declarative) HTTP 클라이언트입니다. 연도주요 이벤트2013Netflix가 내부 프로젝트로 Feign 개발 시작2015Netflix OSS의 일부로 Feign 오픈 소스 공개2016Spring Cloud Netflix 프로젝트에서 @FeignClient 으로 통합2019OpenFeign이라는 이름으로 독립 프로젝트로 분리됨Netfliex는 Feigb의 개발에서.. 2025. 7. 2. [SpringBoot3] MultipartException, FileCountLimitExceededException 발생 이슈 기준일 : 2025-06-27Spring Boot 최신 버전 : 3.5.3발생 버전Spring Boot 3.4.7Spring Boot 3.5.1 이상발생한 예외 Stack Trace 일부 발췌org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet request at org.springframework.web.multipart.support.StandardMultipartHttpServletRequest.handleParseFailure(StandardMultipartHttpServletRequest.java:133) ~[spring-web-6.2.8.jar:6.2.8] at org.springframew.. 2025. 6. 27. [SpringSecurity5] OAuth2.0로 카카오 로그인 구현 OAuth2.0로 카카오 로그인 구현 방법에 대해 포스팅하겠습니다. 1. 카카오 개발자 센터에서 애플리케이션 등록카카오 개발자 센터(https://developers.kakao.com/)에 접속하여 로그인 후 애플리케이션을 등록합니다. 앱 이름과 회사 정보를 작성한 뒤, 카카오 로그인 기능을 활성화합니다.Redirect URI: http://localhost:8080/login/oauth2/code/kakao와 같은 형식으로 설정합니다. 이 값은 Spring Security에서 카카오로부터 인증 후 리디렉션될 URL입니다. 애플리케이션을 등록하면, Client ID (REST API Key)와 Client Secret을 발급받습니다. 카카오 로그인 시 개인정보를 가져오기 위해서는 동의항목 설정을 해야합.. 2024. 10. 17. [SpringSecurity5] OAuth2.0로 네이버 로그인 구현 OAuth2.0로 네이버 로그인 구현 방법에 대해 포스팅하겠습니다. 1. 네이버 개발자 센터에서 애플리케이션 등록네이버 개발자 센터(https://developers.naver.com)에접속하여 로그인 후 애플리케이션을 등록합니다. 앱 이름과 설명을 작성하고, 사용 API에서 "네이버 로그인"을 선택합니다. 서비스 URL: 실제 서비스나 개발 환경의 URL을 입력합니다.Callback URI: http://localhost:8080/login/oauth2/code/naver와 같은 형식으로 설정합니다.이 값은 Spring Security에서 사용되는 OAuth2 리디렉션 URL입니다. 애플리케이션을 등록하면, Client ID와 Client Secret을 발급받습니다. 2. Spring Boot 설정.. 2024. 10. 17. [SpringBoot3] RestTemplate (httpclient 4 → 5) 마이그레이션 스프링 프레임워크 6.0에서 Apache HttpClient에 대한 지원이 제거되어, org.apache.httpcomponents.client5:httpclient5로 대체되었습니다. 1. Maven Dependency 변경 org.apache.httpcomponents httpclient org.apache.httpcomponents.client5 httpclient5 2. RestTemplate Migration공식 문서를 보고 변경하는 것이 좋습니다.HttpComponentsClientHttpRequestFactory 클래스로 readTimeout과 connectTimeout을 설정하던 코드가 HttpClientConnectionManager 클래스를 통해 timeout 관련 설정 후 .. 2024. 5. 7. Spring Security 5에서 Spring Security 6으로 변경 (URL-권한 인가) Overview스프링 부트 3.0부터 스프링 시큐리티 6 버전이 적용되었습니다. 삭제되거나 deprecated된 코드가 많아서 마이그레이션 시 주의할 부분에 대해 알려드리겠습니다.기존 버전 : 5.3.3.RELEASE최신 버전 : 6.2.4 Summary기존 WebSecurityConfigurationAdapter를 상속받아 세팅하던 방식은 삭제되었고 SecurityFilterChain bean을 스프링 컨테이너에 등록해줘야함.authorizeRequests() → authorizeHttpRequests()로 변경antMatchers() → requestMatchers()로 변경로그인 페이지 리다이렉트 반복 접근 이슈 발생 시.dispatcherTypeMatchers(DispatcherType.FORWA.. 2024. 4. 30. [SpringBoot] JPA Comment (주석 추가) 설정 방법 JPA Comment (주석 추가) 설정 방법 application.ymlspring: jpa: properties: hibernate: show_sql: false format_sql: true use_sql_comments: true # sql comments 사용 1. JPA Repository에 적용 방법To apply JPA QueryHints to the queries declared in your repository interface you can use the QueryHints annotation. It takes an array of JPA QueryHint annotations plus a boolean flag to potentiall.. 2024. 2. 2. [Spring] WebMVC에서 WebFlux 사용 (with WebClient) Spring에는 두 가지 웹 프레임워크가 있습니다. WebMVC : 전통적인 멀티 스레드 기반의 웹 프레임워크 WebFlux : 리액티브 스택 기반의 웹 프레임워크 Spring WebMVC와 WebFlux는 공존할 수 없다고 생각했는데, Spring framework에서 제공하는 Http Client API로 RestTemplate 대신 WebClient를 사용하라고 권고하고 있어서 의문이 생겼습니다. 두 모듈의 공존이 가능한 것인가? Spring 문서를 확인해보면 "애플리케이션은 하나 또는 다른 모듈을 사용하거나 경우에 따라 두 모듈을 모두 사용할 수 있습니다(예: 반응형 WebClient가 포함된 Spring MVC 컨트롤러)."라고 써져 있습니다. 실제로 spring-boot-starter-web,.. 2023. 7. 13. [SpringBoot] InfluxDB 연동 및 예제 시계열 데이터베이스 InfluxDB에 대한 설명과 설치는 아래 포스팅을 참고해주세요. [TSDB/InfluxDB] 시계열 데이터베이스 InfluxDB 설치하기 시계열 데이터베이스(TSDB, Time Series Database) Time-Stamped Data라고도 불리는 Time Seriese Data(시계열 데이터)는 시간에 따라 저장된 데이터를 의미합니다. 시계열 데이터들은 동일한 소스로부터 시간이 moonsiri.tistory.com 우선 influxDB의 UI에 접근합니다. (http://localhost:8086/) 메인 화면에 Java가 없다면 [MORE →] 버튼을 클릭합니다. java를 검색한 후 클릭합니다. 그러면 JAVA를 사용할 경우 추가해야 할 Dependency라던가 Client.. 2022. 11. 14. [SpringBoot] Redis Key Expired Event Notification Redis에서 만료된 키를 수신하거나 subscribe 하는 방법을 알아보다가 Redis에서 알림 이벤트를 발견하였습니다. 만료된 키에 대한 Redis Keyspace 알림에 대해 알아보겠습니다. 우선 redis.conf를 사용하여 keyspace 알림을 활성화하겠습니다. /etc 하위에 존재하는 redis.conf에 notify-keyspace-events Ex를 추가합니다. 더보기 이벤트 종류 K Keyspace events, publish prefix "__keyspace@__:". E Keyevent events, publish prefix "__keyevent@__:". g 공통 명령: del, expire, rename, ... $ 스트링(String) 명령 l 리스트(List) 명령 s 셋(.. 2021. 4. 1. 이전 1 2 3 다음 728x90 반응형