전체 글

API 호출은 대부분의 애플리케이션 개발에 기본이 되는 작업입니다. 실제로 업무에서 RestTemplate을 사용한 경험이 있는데요. 요새는 다른 방식도 이용한다고 해서 경험해볼 겸 이렇게 글을 작성해봤습니다. 이 게시글에서는, 스프링 부트 프로젝트에서 API 호출을 할 때 사용하는 RestTemplate, WebClient, 그리고 Feign을 비교하고 간단한 예제 코드를 제공합니다. 본 글에서는 https://open.er-api.com/v6/latest에서 한국의 환율을 조회하는 방식으로 예제 코드를 작성했습니다. 1. RestTemplate RestTemplate는 스프링 프레임워크에서 HTTP 요청을 손쉽게 수행할 수 있는 도구입니다. RestTemplate은 동기식 호출을 사용하며, 아래에 예..
우리가 Spring을 사용하는 수 많은 이유중에 대표적인 장점을 꼽으라면 의존성 주입 컨테이너에 관한 내용을 빼놓을 수 없다. 스프링은 자바 빈을 찾아서 ApplicationContext라고 하는 의존성 주입 컨테이너 오브젝트에 등록을 한다. 그리고 애플리케이션이 돌다가 어떤 오브젝트가 필요하다면 의존하는 오브젝트를 찾아서 연결해준다. 그렇다면 스프링은 어떻게 자바 빈을 찾아가지고 의존성 주입 컨테이너에 등록하는걸까?? @Component 어노테이션으로 이 클래스를 자바 빈으로 등록하라고 알려줄 수 있다. 이번 포스팅에서는 이 @Component에 대해서 알아보려고 한다. @Component @Component 어노테이션을 붙이면 이 클래스를 자바 빈으로 등록시키라고 알려줄 수 있다. 해당 어노테이션이 ..
· TechTalk
Python으로 ps를 진행하는 사람이 많아짐에 따라 이 기능이 필요하다고 생각되어 포스팅 남깁니다. 예시용 코드 여러분께서는 문제를 풀 때 습관처럼 작성하시는 코드가 있으실까요?? import sys input = sys.stdin.readline 위의 코드는 Python에서 값을 입력받을 때 조금이라도 더 향상된 속도로 받을 수 있도록 세팅해 주는 코드죠. 일반 input() 대신에 sys.stdin.readline()으로 입력받도록 설정합니다. 습관처럼 매번 모든 문제에 저런 코드를 작성하시는 분이라면 기존에 작성하신 코드에서 복사 붙여넣기 하시거나 손으로 하나하나 타이핑하시겠죠. Pycharm에서 파이썬 파일을 하나 생성하면 자동으로 저런 코드가 들어가면 편해지지 않을까요?? Pycharm Tem..
· TechTalk
종종 무료 VPN으로 유니콘 HTTPS를 사용하시는 분들이 계십니다. 엄연히 따지면 유니콘 HTTPS는 VPN과 다릅니다. 기왕 프로그램을 사용하시는 거라면 그 원리에 대해서 알아두면 좋겠죠. 오늘은 유니콘 HTTPS의 원리에 대해서 알아보도록 하겠습니다. HTTP & HTTPS 유니콘 HTTPS 자체를 설명하기에 앞서 HTTP랑 HTTPS의 개념에 대해서 먼저 알아봅시다. HTTP는 웹 통신 프로토콜입니다. 사용자가 http://hello.world 이라는 임의의 페이지를 요청하면 관련 서버가 페이지나 리소스를 응답하는 방식으로 통신을 합니다. 우리는 http url 주소를 통해서 통신을 하고 있어요. http://naver.com/ 이면 네이버쪽 서버에 요청을 하고 http://google.com 이..
· TechTalk
WSL2를 이용해 Linux를 쓰다보면 Windows에 있는 파일에 접근해야 될 일이 생기기도 하구요. 반대로 Windows에서 WSL쪽 파일을 건드리고 싶을 때가 있습니다. 이런 경우를 위해 파일 접근하는 방식에 대해서 알려드릴게요. Windows에서 WSL로 파일 탐색기 이용하기 Linux를 실행시키고 explorer.exe . 를 입력해보세요. explorer.exe . 그러면 현재 디렉토리가 파일 탐색기로 자동으로 열립니다. 혹은 파일 탐색기에서 \\wsl$ 를 입력해보세요. \\wsl$ 그러면 네트워크 연결을 통해서 wsl에 접근하실 수 있습니다. 이곳에서 사용중이신 애플리케이션을 선택하시면 접근이 가능합니다. WSL에서 Windows로 이 경우에는 전부 명령어로 접근하셔야 되는 점 미리 인지해..
· TechTalk
Windows 운영체제에서는 Windows Subsystem for Linux라고 하는 기능을 사용할 수 있습니다. Linux에서 코드 작업을 해야 될 경우가 있을 텐데요. vim이나 nano 같은 기본 에디터로는 코드를 작성하기가 만만치 않습니다. 오늘은 WSL2가 설치된 환경에서 VS Code로 코드를 편집하는 방법에 대해서 다뤄보겠습니다. 미리 언급하자면 Linux에 Visual Studio Code를 설치하는 방법이 아닌 Windows의 VS Code에서 WSL2 디렉터리에 접근하는 방식을 다룹니다. VS Code 확장앱 WSL 설치 Ctrl + Shift + X 를 눌러서 Extension 검색창을 킵니다. 여기에 WSL을 검색하고 Microsoft 사에서 배포하는 WSL을 Install 해주시..
· AWS lambda
AWS Lambda에서 Typescript를 쓰는 이유 처음 서버리스를 개발하게 되면 생소함에서 오는 어려움을 마주하게 된다. lambda 함수로 전달되는 이벤트나 반환 타입을 모르는데 어떻게 개발할 수 있을까? 이때 자바스크립트로 개발 시에는 함수 인자에 대한 아무런 정보를 받을 수 없다. 이래서 타입스크립트를 도입하는 편이 좋다. 타입스크립트로 lambda 함수를 작성하면 lambda 함수에 대한 타입 정보를 제공해준다. 여기에 더해 타입스크립트 기반으로 Serverless Framework를 사용하면 serverless.yml 파일 대신 serverless.ts를 사용할 수 있다. yml 파일의 경우 정적 파일이라 오타로 인해 시간을 낭비하거나 동적으로 값을 생성하기 어려운 반면 ts를 사용하면 이..
· TechTalk
webpack(웹팩) 소개 webpack은 현대 자바스크립트 응용 프로그램을 위한 module bundler입니다. module bundler란 웹 애플리케이션을 구성하는 리소스(HTML, CSS, Javscript, …)를 각각의 모듈로 보고 이를 조합해서 병합된 하나의 결과물을 만드는 도구를 의미합니다. 개발자가 응용프로그램의 종속성을 관리하고 최적화할 수 있도록 지원하므로 관리성과 효율성이 향상됩니다. 이번 포스팅에서는 webpack의 기능, 이점 및 다른 빌드 도구와 어떻게 다른지를 포함한 webpack의 기본 사항을 살펴보겠습니다. webpack 프로젝트 설정하기 webpack을 시작하는 것은 쉽지만, 시작하기 전에 시스템에 Node.js 및 npm(Node Package Manager)이 설치..
moongomi
개발냥발