본문 바로가기
반응형

분류 전체보기75

[자바] Map의 Key 값 혹은 Value 값 List 생성, 객체 List에서 특정 값 List 생성 안녕하세요, 오늘은 간혹 코딩 테스트 혹은 실제 프로젝트에서 필요한 아래 2개의 케이스에 대해 구현하는 방법을 정리해보겠습니다. 1. Map의 Key값 List 생성 (Key값 추출) / Value값 List 생성 (Value값 추출) Java의 Key, Value로 구성된 HashMap에서 Key값만 가져오기 혹은 Value값만 가져와서 List를 만들어 보도록 하겠습니다. 먼저 아래와 같이 이름과 ID로 구성된 임의의 Member Map을 생성을 합니다. Map memberMap = new HashMap(); memberMap.put("킴오리", 30); memberMap.put("이오리", 50); memberMap.put("엔탈", 10); 이 Map에서 Key로만 구성된 List 혹은 Value.. 2022. 1. 13.
[Node.js] Headless 브라우저 웹 크롤링 Puppeteer 소개, 설치 및 샘플 예제 안녕하세요, 오리엔탈 킴입니다. Headless Browser를 이용한 웹 크롤링(Crawling) 및 웹 스크래핑(Scraping) 툴인 Puppeteer에 대해 간단히 알아보고, 초기 설치 및 세팅 후 간단한 샘플 예제를 구현하도록 하겠습니다. 이 글을 시작으로 추후 Puppeteer를 이용하여, 여러 웹크롤링 예제와 웹 자동화 테스트 툴 (Web UI Testing)을 구현하는 글도 올리도록 하겠습니다. Puppeteer란, 크롬 DevTools 프로토콜을 이용하여 Chrome 및 Chromium을 자유롭게 컨트롤할 수 있게 해주는 웹크롤링 Node.js 라이브러리입니다. (Chromium은 오픈소스 코어 웹 브라우저로 크롬 등 다양한 브라우저들이 Chromium을 기초해서 개발되었습니다.) Pup.. 2022. 1. 7.
기본 정렬 알고리즘 - 선택정렬, 버블 정렬, 삽입 정렬 안녕하세요, 자바 프로그래밍 알고리즘 첫 포스팅으로 가장 기본이자 알고리즘의 시작이라고 할 수 있는 기본 알고리즘 3종 (선택/버블/삽입 정렬)에 관해서 정리하도록 하겠습니다. 알고리즘 시험이나 코딩 테스트에서는 해당 알고리즘을 그대로 이용해서 구현하는 식의 문제가 나올 가능성은 적겠지만, 기본 정렬 알고리즘을 완벽히 이해하고 구현할 수 있어야 다른 복잡하고 어려운 알고리즘 문제를 이해하고 해결하는데 큰 도움이 될 것입니다. 만약 아래와 같이 정렬이 되지 않은 배열 크기 N이 5인 int 배열이 있고, 해당 배열을 좌측부터 오름차순으로 정렬을 해야 한다고 가정을 하고 선택/버블/삽입 정렬을 이용하여 정렬을 하도록 하겠습니다. { 3, 5, 1, 2, 4 } -> { 1, 2, 3, 4, 5 } 1. 선택.. 2021. 12. 29.
[Node.js 개발환경] Node.js 및 VS code 설치, Node.js 초기 프로젝트 생성 및 실행 안녕하세요, 윈도 OS 환경에서 Node.js (노드js) 및 VS code (Visual Studio Code, 비주얼 스튜디오 코드) 설치 후, VS Code에서 Node.js 프로젝트 생성 및 실행에 대해 포스팅하도록 하겠습니다. Node.js 설치 먼저, 아래 사이트에서 최신 버전 Node.js를 다운로드 합니다. https://nodejs.org/ko/ Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 안정적, 신뢰도 높음 버전을 저는 선택을 하였는데, 최신 버전을 선택하셔도 무방합니다^^ 다운로드한 설치 파일을 실행합니다. 위와 같이, License 동의를 체크해주시고, 특별히 저.. 2021. 12. 23.
바닐라 자바스크립트(Javascript) + 타임리프(Thymeleaf) 이용 AJAX 구현 예제 안녕하세요, 오늘은 스프링 부트(Spring Boot)의 대표 템플릿 엔진인 타임리프(Thymeleaf)와 바닐라(순수) Javascript를 활용하여 Ajax를 구현해보는 예제를 작성해보도록 하겠습니다. 바닐라 자바스크립트를 활용하여 Ajax를 구현하는 방법은 아래 포스팅을 참고해주세요~! 2021.12.10 - [[IT] Javascript] - 순수 (바닐라) JavaScript로 AJAX Get/Post 구현 (JSON 응답/요청) 먼저 타임리프(Thymeleaf)에 대해 간단히 설명을 하면, 스프링 부트(Spring Boot)의 대표 템플릿 엔진입니다. 템플릿 엔진이란 Html Markup + 데이터를 결합하여 동적인 화면을 구현할 수 있도록 하는 도구입니다. 기존에는 JSP를 활용하여 구현을 .. 2021. 12. 17.
순수 (바닐라) JavaScript로 AJAX Get/Post 구현 (JSON 응답/요청) 안녕하세요, 오늘은 순수 자바스크립트(Javascript)만으로 ajax를 구현하는 법을 작성하도록 하겠습니다. jQuery 같은 다른 라이브러리를 사용하지 않고, 오직 Javascript만 사용하여 구현하는 것을 바닐라(vanilla) Javascript 혹은 퓨어(Pure) 자바스크립트라고 하는데, jQuery가 너무도 많이 쓰이고 강력한 라이브러리이지만 최근 여러 이유로 탈제이쿼리를 하는 프로젝트들이 많아지고 있는 추세입니다. 그래서 jquery의 $.ajax 기능을 바닐라 Javasxcript를 이용하여 간단히 구현하도록 하겠습니다. 1. ajax - GET 방식 구현 (JSON 응답 및 요청) 구현할 기능은 간단합니다. html 페이지에서 name을 입력받고, 서버에 ajax 요청을 하여 해당 .. 2021. 12. 10.
lombok(롬복) Eclipse(이클립스), STS(Spring Tool)에 설치하기 JAVA 프로젝트의 필수 라이브러리라 할 수 있는 Lombok(롬복)을 Windows OS - Eclipse(이클립스) / STS (Spring Tool Suite)에 설치하는 방법을 포스팅하겠습니다. Lombok은 이클립스 IDE 사용 시에는 버전 등에 영향을 많이 받아서 자동 설치는 에러가 나는 경우가 많아서 아래와 같이 수동으로 설치하시는 것이 가장 좋습니다. 1. Lombok 다운로드 https://projectlombok.org/download Download projectlombok.org 위 lombok 공식 사이트에서 설치파일(lombok.jar)을 다운로드합니다. 2. Lombok 설치 CMD를 실행하여, 다운로드한 lombok.jar 파일이 있는 경로로 이동(cd 폴더 위치)합니다. 아.. 2021. 12. 7.
비트코인 거래소 API를 활용한 비트코인 나만의 웹서비스 개발(2) 안녕하세요, 오리엔탈 킴입니다. 비트코인 거래소 빗썸 API를 활용한 비트코인 자동매매 + 자체 웹서비스 (JAVA+Spring Boot) 2번째 포스팅으로 지난 사전 설정(https://kim-oriental.tistory.com/4)에 이어서 본격적인 개발을 진행하겠습니다. 이번 포스팅에는 우선 빗썸 API를 활용하여, 코인의 가격 정보를 가져와서 저장하고 저장된 가격정보를 웹에서 보여주는 간단하고 심플한 나만의 코인 웹서비스를 만드는 것을 목표로 하겠습니다. 최대한 심플하고 빠르게 구현할 수 있는 아키텍처 구성을 할 예정입니다. 지난 포스팅(https://kim-oriental.tistory.com/4)에서 프로젝트 생성 및 Dependency 추가한 것과 같이, JAVA Spring Boot 기반.. 2021. 12. 3.
[H2 Database] H2 Database 설치 안녕하세요, 오리엔탈 킴입니다. Windows OS에 H2 Database를 설치해보도록 하겠습니다. H2 Database는 자바 기반의 초 경량 관계형 디비 (RDBMS, Relational Database Management System)입니다. 설치도 간단하고 사이즈도 매우 적고, 오픈소스 DB여서 손쉽게 설치하여 빠르게 사용이 가능한 장점이 있습니다. 또한 인 메모리(In-memory) 기반 디비로 빠른 처리 속도를 지원하고 JDBC API 지원, 브라우저에서 접속 가능한 콘솔 제공 등 다양한 장점이 있습니다. 1. H2 Database 다운로드 https://www.h2database.com/html/main.html H2 Database Engine H2 Database Engine Welco.. 2021. 10. 20.
IntelliJ(인텔리제이) Spring Boot DevTools 적용 안녕하세요, 오리엔탈 킴입니다. IntelliJ(인텔리제이) Spring Boot DevTools 적용하기 Spring Boot DevTools는 소스 변경이 발생할 때마다 빠르게 자동 빌드해줘서 바로바로 반영 결과를 확인할 수 있도록 도와주는 유용한 툴입니다. STS에서는 Dependency만 추가하면 잘 동작하던 DevTools가 인텔리제이 (IntelliJ)에서는 최초 약간의 설정을 해줘야 정상 동작을 합니다. 그 설정은 아래와 같습니다. 1. 의존성(Dependency) 추가 먼저 Spring Boot DevTools의 의존성을 추가를 해야 합니다. Gradle 프로젝트는 build.gradle 파일에 아래와 같이 dependecies 아래 developmentOnly 'org.springfram.. 2021. 10. 18.
반응형