전체 글 61

📒 오늘 회의에서 새로 배운 금융 용어 정리

팀 회의 중 처음 듣고 바로 이해되지 않았던 용어들을 하나하나 정리해봤습니다.금융권에서 자주 쓰이는 단어지만, 처음 접하면 헷갈릴 수 있어서 개인 메모 겸 공유용으로 기록해둡니다.⸻✅ 1. 기산일 거래 • 기산일(起算日): 어떤 기준이 되는 날짜. • 기산일 거래란?이자 계산, 계약 기간 계산 등을 시작하는 기준일을 명확히 정해둔 거래예요.예: 7월 1일에 개설한 예금이라면, 이 날짜가 기산일이 됨.⸻✅ 2. 롤아웃 (Roll-out) • 시스템이나 기능을 점진적으로 배포하거나 적용하는 과정 • 예: 새로운 전산 기능을 전체 지점에 한 번에 적용하는 게 아니라, 일부 지점부터 순차적 적용 → 전체 확대 • 반댓말: 롤백 (Roll-back) = 문제 생기면 이전 상태로 되돌리는 것⸻✅ 3. SR (Ser..

카테고리 없음 2025.07.31

토큰증권 제도화와 스마트 컨트랙트

최근 디지털 자산, CBDC, 토큰증권에 대한 관심이 높아지고 있습니다.강의를 들으며 정리한 내용을 공유해봅니다. 📌 브레튼우즈 체계와 달러 이야기2차 세계대전 이후, 미국은 유럽을 재건하는 역할을 맡게 되면서 달러 중심의 브레튼우즈 체계가 만들어졌습니다.이 체계에서는 달러가 금과 연결되어 ‘귀축통화’처럼 쓰였지만, 시간이 지나며 문제가 발생합니다.세계 경제는 성장하며 돈(달러)에 대한 수요가 폭발적으로 늘었지만, 금은 쉽게 발견되지 않아 공급이 한정적이었죠.결국 1971년 닉슨 대통령은 “달러와 금을 더 이상 1:1로 보장하지 않겠다”며 변동환율제를 선언하게 됩니다. 📌 증권시장의 역사와 한국의 변화주식투자의 역사는 의외로 깊습니다.1688년 조셉 드 라 베가가 쓴 『혼돈 속의 혼돈』은 세계..

카테고리 없음 2025.07.12

Spring에서 HttpEntity 사용하기: 효과적인 API 통신을 위한 완벽 가이드

안녕하세요, 오늘은 Spring 프레임워크에서 외부 API와 통신할 때 필수적으로 사용하게 되는 HttpEntity 클래스에 대해 알아보겠습니다. 특히 RestTemplate을 사용한 API 통신과 토큰 기반 인증 시나리오에 초점을 맞춰 설명드리겠습니다.목차HttpEntity란 무엇인가?왜 HttpEntity를 사용해야 하는가?HttpEntity 사용 예제토큰 기반 인증 구현하기실무에서의 HttpEntity 활용 팁자주 발생하는 문제와 해결 방법결론HttpEntity란 무엇인가?HttpEntity는 Spring Framework에서 제공하는 클래스로, HTTP 요청이나 응답을 표현하는데 사용됩니다. 쉽게 말해 HTTP 통신에서 '봉투'와 같은 역할을 합니다. 이 봉투에는 두 가지 중요한 정보가 포함됩니다..

인턴 2025.05.11

Spring Boot에서 JSON 응답 예쁘게 포맷팅하기

개발자라면 누구나 API 응답을 확인할 때 읽기 어려운 한 줄짜리 JSON 데이터에 고통받아 보셨을 겁니다. 특히 내부 API 테스트 화면을 만들 때, 응답 데이터가 보기 좋게 표시되어야 다른 개발자들도 쉽게 이해할 수 있죠. 오늘은 Spring Boot와 JSP를 사용하여 API 응답 JSON을 예쁘게 포맷팅하는 방법을 알아보겠습니다.문제 상황: 자바 객체 vs JSONAPI 응답을 JSP 페이지에 표시할 때 자주 마주치는 문제가 있습니다. 바로 Java 객체가 JSON 형식이 아닌 toString() 메소드의 결과로 출력된다는 점이죠.예를 들어, 다음과 같은 컨트롤러 코드가 있다고 가정해 봅시다: @PostMapping("/api-test")public String testApi(@RequestPa..

인턴 2025.05.09

Spring Boot에서 API 인증 토큰 자동 재발급 구현하기

안녕하세요! 오늘은 외부 API 연동 시 자주 마주치게 되는 문제 중 하나인 '토큰 만료 처리'에 대해 이야기해보려고 합니다.문제 상황외부 API를 호출할 때 인증 토큰(Access Token)을 사용하는 경우가 많습니다. 그러나 이 토큰은 보통 일정 시간이 지나면 만료되기 때문에, 만료된 토큰으로 API를 호출하면 401 Unauthorized 오류가 발생합니다.이런 상황에서 매번 서비스 레이어에서 오류를 처리하고 토큰을 재발급받는 코드를 작성하는 것은 번거롭고 중복된 코드를 만들게 됩니다.해결 방법: 자동 재발급 메커니즘이 문제를 해결하기 위해 API 클라이언트 레이어에서 토큰 만료 시 자동으로 토큰을 재발급받고 API를 재호출하는 메커니즘을 구현해 보았습니다.구현 코드 java@Slf4j@Compo..

인턴 2025.05.08

Spring HttpEntity는 왜 불변 객체인가: 토큰 재발급 시 주의점

안녕하세요! 오늘은 Spring의 HttpEntity 클래스가 불변(immutable) 객체인 이유와 이로 인해 API 호출 시 특히 토큰 재발급 상황에서 발생할 수 있는 문제점에 대해 알아보겠습니다.문제 상황: 401 에러와 토큰 재발급API를 호출할 때 인증 토큰이 만료되어 401(Unauthorized) 에러가 발생하는 경우가 있습니다. 이럴 때 일반적인 해결책은 토큰을 새로 발급받아 재시도하는 것입니다. 많은 개발자들이 다음과 같은 코드를 작성합니다: // 최초 API 호출HttpHeaders headers = new HttpHeaders();headers.setBearerAuth(token);HttpEntity entity = new HttpEntity(requestBody, headers);..

인턴 2025.05.07

스프링 부트에서 토큰 관리: 캐싱과 만료 전략 구현하기

API 통신에서 토큰 관리는 개발자에게 항상 고민되는 부분입니다. 특히 토큰의 유효기간과 효율적인 재발급 전략은 중요한 과제입니다.문제 상황- 24시간마다 토큰 재발급 필요- 불필요한 API 호출 최소화- 토큰 유효성 체크- 캐시 활용을 통한 성능 최적화구현 과정1. 초기 고민처음에는 단순히 토큰을 발급받는 로직만 구현했습니다. 하지만 이는 다음과 같은 문제점이 있었죠:- 매번 새로운 토큰 발급- 불필요한 API 호출- 성능 저하2. 토큰 유효성 체크 로직private String checkExistingToken() { // 토큰이 발급된 적 없으면 null 반환 if (tokenIssuedAt == null) { return null; } // 24시간 지났는지 확인..

인턴 2025.04.29

Builder 패턴 정리 - 왜 필드 다 받는 생성자가 필요할까?

1. Builder는 무슨 역할?Builder는👉 객체를 조립하는 패턴이다.필드를 하나씩 넣고마지막에 build() 호출하면그걸 다 모아서 객체를 "한 방"에 만든다.2. 그런데, build()가 내부에서 하는 일은?build()는 결국"모든 필드를 인자로 받는 생성자"를 호출한다. return new ApiRequestBodyDTO(stndHedr, pastStndHedr, data); 이런 식으로.3. 그럼 왜 생성자가 필요함?조립은 했는데완성할 방법(생성자)이 없으면객체를 만들 수가 없음.즉, Builder = 생성자 필수.4. 만약 생성자가 없으면?에러가 난다. (오늘처럼... ㅎㅎㅎ) constructor X in class Y cannot be applied to given types 이런 ..

인턴 2025.04.28

Builder만 쓰면 되는 줄 알았던 나의 착각

왜 Lombok @Builder 쓸 때 생성자랑 충돌났을까?📍 내가 겪은 상황처음에 나는 ApiRequestBodyDTO 클래스에 이렇게 작성했었다. @Data@Builder@NoArgsConstructor@AllArgsConstructorpublic class ApiRequestBodyDTO { private StndHedr stndHedr; private PastStndHedr pastStndHedr; private Map data; // (추가) 커스텀 생성자 public ApiRequestBodyDTO(String trmnSystIp, Map dataMap) { this.stndHedr = StndHedr.createStndHedr(trmnSystIp); ..

인턴 2025.04.28