본문 바로가기
반응형

분류 전체보기75

[Node.js] Node.js로 커맨드라인(CLI) 프로그램 만들기 안녕하세요, 오늘은 Node.js를 활용해서 커맨드라인(CLI : Command Line Interface)에서 돌아가는 아주 간단한 애플리케이션을 작성해보도록 하겠습니다. 먼저 npm init을 통해 혹은 수동으로 package.json 파일을 생성해줍니다. 혹시 node 설치 및 프로젝트 설정방법이 필요하시면 아래 포스팅을 참고해주세요~ [[IT] Node.JS] - [Node.js 개발환경] Node.js 및 VS code 설치, Node.js 초기 프로젝트 생성 및 실행 package.json { "name": "clitest", "version": "1.0.0", "main": "cli.js", "bin":{ "clitest": "./cli.js" }, "scripts": { "start": ".. 2022. 4. 12.
[JAVA Spring Boot] Rest API + 레디스 캐시 (Redis Cache) 적용 및 샘플 예제 안녕하세요, 이번엔 Spring Boot Rest API 서비스를 만들고, Redis를 이용하여 API 캐시(cache)를 적용해보는 샘플을 만들어 보도록 하겠습니다. API 캐시란 우선 캐시(Cache)란, 한번 처리한 데이터를 임시로 저장소에 저장하는 것으로, 이 임시 데이터를 동일하거나 유사 요청이 왔을 경우 저장소에서 바로 읽어와서 응답을 하여 성능 및 응답속도 향상을 위한 기술입니다. API 서비스에서 요청(Request)이 왔을 경우, 연산을 수행하거나 DB의 데이터를 불러오거나 3rd Party 시스템에 인터페이스 하는 등 특정 작업을 하여 데이터를 생성 후 다시 전달(Response)을 하게되는데 캐시를 이용해 특정 요청을 저장소에 임시로 저장해놨다가 이후 동일한 응답을 해도 되는 요청이 .. 2022. 3. 14.
[Node.js] Express Rest API + Puppeteer 웹크롤링 서비스 VSCode Docker 이미지 생성 및 실행 안녕하세요, 이전 포스팅들에서 Node.js Puppeteer 웹크롤링을 이용하여 데이터를 가져오고, 가져온 데이터를 Express를 이용하여 전달하는 Rest API 서비스를 개발하였습니다. 여러 포스팅으로 올려서 좀 정신이 없어 최종적으로 정리를 하고 마지막으로 VSCode에 Docker Extension을 설치하여 Docker관련 커맨드를 하나도 몰라도 쉽게 Docker 컨테이너 이미지를 생성하고 실행하는 내용을 정리해보도록 하겠습니다. Express 프로젝트 생성 [[IT] Node.JS/[웹크롤링] Puppeteer] - [Node.js] Express 설치, 프로젝트 생성 및 Rest API 서버 만들기 (+웹크롤링 데이터 전달) VSCode를 실행하여, 프로젝트를 생성할 폴더를 오픈하고, 터.. 2022. 3. 9.
[Javascript][Node.js] Map 자료 구조 정의, 사용법, 문법 및 반복문 활용 Key, Value로 이루어진 데이터 집합인 Map 자료구조를 Javascript 및 Node.js에서 어떻게 정의하고 사용하는지 Map 객체 내장 메서드와 문법을 정리해보도록 하겠습니다. Map 객체 정의 및 데이터 삽입 Map은 아래와 같이, new Map()으로 정의를 할 수 있습니다. 데이터를 삽입하는 방법은 2가지인데, map.set( key, value )를 통해 데이터를 저장하거나, 최초 정의 시 new Map([ [ key, value] ])와 같이 Map 생성 및 데이터 삽입을 동시에 할 수 있습니다. var map1 = new Map(); map1.set('key1','value1'); map1.set('key2','value2'); var map2 = new Map([ ['key3',.. 2022. 3. 4.
[Node.js] Express 설치, 프로젝트 생성 및 Rest API 서버 만들기 (+웹크롤링 데이터 전달) 안녕하세요, Node.js의 강력한 웹 프레임워크인 Express.js를 설치하고 Express 프로젝트 생성 및 Rest API 서비스를 작성해보겠습니다. 전달할 데이터는 이전에 작성한 [웹 크롤링] Node.js Puppeteer - investing 원자재(금은/천연가스/원유) 가격 가져오기 포스트에서 작성한 것을 활용하여 웹 크롤링해서 가져온 원자재 가격 데이터를 전달하는(송신하는) API 서비스를 개발해보도록 하겠습니다. Express 설치 및 프로젝트 생성 Node.js와 VSCode는 설치가 안되어 있다면 하기 포스트를 참고하여 설치를 한 후, Add Folder나 Open Folder를 통해 프로젝트 폴더를 오픈합니다. 그리고 하단 터미널 창에서 npm init을 통해 초기 프로젝트 세팅을.. 2022. 3. 2.
[웹 크롤링] Node.js Puppeteer - investing 원자재(금은/천연가스/원유) 가격 가져오기 안녕하세요, Headless Browser를 이용한 웹 크롤링(Crawling) 및 웹 스크래핑(Scraping) 툴 Puppeteer를 이용해 실시간 원자재(금 은,천연가스,원유) 선물 가격 혹은 지수가격(코스피,나스닥,S&P,러셀,FTSE 등)을 자동으로 가져오는 코드를 구현해보도록 하겠습니다. 실시간 원자재 선물가격 이나 주가 지수 가격은 investing.com이라는 사이트에서 가져오도록 하겠습니다. investing.com에 정말 많은 경제지표들이 있는데, 사실 원자재, 주가 지수 외에 암호화폐(비트코인,이더리움,리플), 환율(달러, 유로, 엔), ETF/펀드 등도 유사하게 구현하여 읽어 올 수 있습니다. 페이지 분석 먼저 웹 크롤링을 하려면 어떤 값을 가져오면 될지 직접 사이트에 들어가서 분석.. 2022. 2. 25.
[자바] equals와 hashcode - 같은 객체인지 비교 안녕하세요, JAVA에서 두 변수가 같은지를 비교할 때, 주로 '==' 연산자와 equals()란 메서드를 사용합니다. '==' 연산자와 equals() 메소드 만약 비교하는 대상의 데이터 타입이 기본 타입(Primitive Type : byte, short, int, long, char, float, double, boolean)이라면, '==' 연산자를 이용해서 해당 두 변수의 값이 같은지 비교해서 True / False를 리턴해줄 것입니다. 비교하는 데이터 타입이 참조 타입(Reference Type : Class, Interface, Array, Enum)이라면, '==' 연산자는 두 대상이 완전히 동일한 대상인지, 두 대상의 참조값 (메모리 주소)이 같은지를 비교하여 True / False를 리.. 2022. 2. 23.
[VS Code] Java Project 생성 / VSCode Debug Console 설정 안녕하세요, MS의 오픈소스 무료 소스코드 편집 툴인 VS Code에서 일반 Java Project를 생성하고 실행하면서 이런저런 세팅을 하여 VS Code에 Java 개발 환경을 세팅해보도록 하겠습니다. 1. Java Project 생성 및 실행 가장 먼저 기본적으로 JAVA 설치 및 환경변수 세팅은 기본으로 되어 있어야 합니다. 관련 내용은 [[IT] JAVA] - JAVA 설치 및 환경 셋팅 (OpenJDK) 이 포스팅을 참고해주세요~ 그 다음으로는 VS Code를 실행하여 JAVA 관련 Extension을 설치합니다. 단축키 [Ctrl] + [Shift] + [X] 혹은 아래 좌측 메뉴의 Extensions 아이콘을 클릭하여 Extensions 메뉴로 이동합니다. 그런 다음 검색창에 "Extens.. 2022. 2. 16.
[VS Code] VSCode에 Spring Boot 개발 환경 세팅 및 샘플 프로젝트 생성, 실행 안녕하세요, 오늘은 MS(마이크로 소프트)의 오픈소스 무료 소스코드 편집 툴인 VS Code(비주얼 스튜디오 코드)에 Spring Boot 개발 환경을 세팅하고 간단히 프로젝트 생성 및 실행을 해보도록 하겠습니다. VSCode에서 스프링부트를 사용해보니, Eclipse 기반 STS와 비교하면 확실히 가볍고 빠른 장점이 있고, IntelliJ에 비교하면 무료 오픈소스이기 때문에 누구나 쉽게 접근이 가능합니다. 1. Extension 설치 혹시 VSCode 설치가 안되어 있다면, VSCode 설치는 [ [Node.js 개발환경] Node.js 및 VS code 설치, Node.js 초기 프로젝트 생성 및 실행 ] 포스팅을 참고하세요~ VSCode 자체가 JAVA 언어만을 위한 툴이 아니라서 별도로 JAVA .. 2022. 2. 7.
[JPA] JPA란? Spring Data JPA로 간단 예제 프로젝트 구현 안녕하세요, 저는 주로 Mybatis로 쿼리를 직접 작성하여 DB 데이터를 가져와 처리하던 전통적인 자바 프로젝트를 많이 다뤘었는데요, 예전에 JPA를 잠깐 접해볼 일이 생겼는데 정말 신세계를 경험한 느낌을 받았었습니다. 그러나 업무에선 다룰 일이 많이 없어서 공부를 깊게 하지는 못하였습니다. 그래서 JPA에 대해 공부를 하기 위해 오늘은 JPA의 개념과 그중에서 Spring Data JPA를 이용하여 아주 간단한 프로젝트 샘플 예제를 구현해보도록 하겠습니다. JPA란? JPA란 Java Persistence API의 약자이며 자바의 ORM을 위한 표준 기술로 Hibernate, Spring JPA, EcliplseLink 등 과 같은 구현체가 있고 이것의 표준 인터페이스가 JPA 입니다. ORM(Obj.. 2022. 1. 27.
반응형