목록

'홈' 729건

  • JSP에서 파일 업로드
    프로그래밍 언어/자바 웹 · 댓글 1
    파일 업로드 라이브러리 설치 파일 업로드 기능을 사용하려면 오픈 소스 라이브러리를 설치해야 합니다. 파일 업로드 라이브러리를 설치하고 과정은 다음과 같습니다. 1. jakarta.apache.org로 접속한 후 왼쪽 메뉴에서 Commons를 클릭합니다. 2. 페이지 왼쪽 중간쯤에 위치한 FileUpload를 클릭합니다. 3. Releases에 있는 download site을 클릭합니다.4. commons-fileupload-1.6.0-bin.zip을 클릭해 다운로드합니다. 5. zip 파일의 압축을 풉니다. 6. 압축을 푼 폴더의 하위 폴더인 commons-fileupload-1.3.3-bin에 위치한 commons-fileupload-1.6.0.jar 파일을 복사합니다. 7. 프로젝트 pro15의 WE..
  • 통계 조회 시간 설정 API 사용하기 - 국내총생산 데이터 샘플 사용하기
    프로그래밍 언어/Python · 댓글 1
    통계 조회 조건 설정 API를 사용해서 국내총생산과 기준금리 데이터를 수집합니다. ECOS API를 사용하기 위해서는 다음 세 가지 데이터를 반드시 확인해야 합니다. ① API 주소: HTTP 요청 메시지를 보낼 ECOS API 서버의 주소② 요청인자: ECOS API 요청 시 서버에 전달해야 할 입력 데이터③ 출력값: ECOS API 요청에 대한 서버의 출력 데이터 국내총생산 데이터 샘플 사용하기01 지표별 과거 데이터를 얻기 위해 ECOS 한국은행 Open API 서비스(https://ecos.bok.or.kr/api/#/) 페이지 상단에서 [개발 가이드]-[개발 명세서]를 클릭한 뒤, [개발 명세서] 창의 서비스 명에서 [통계 조회 조건 설정] 탭을 클릭합니다. '상세주소'와 '요청인자'가 각각 ..
  • AWS와 GCP로 배포하기 - 서비스 운영을 위한 패키지(2)
    프로그래밍 언어/NODE JS · 댓글
    시퀄라이즈데이터베이스도 배포 환경으로 설정합니다. 시퀄라이즈의 경우 수정이 필요합니다. 시퀄라이즈에서 가장 큰 문제는 비밀번호가 하드 코딩되어 있다는 것이며, JSON 파일이므로 변수를 사용할 수 없습니다. 다행히 시퀄라이즈는 JSON 대신 JS 파일울 설정 파일로 쓸 수 있게 지원합니다. config 폴더에서 config.json을 지우고 config.js를 생성합니다.require("dotenv").config();module.exports = { development: { username: "root", password: process.env.SEQUELIZE_PASSWORD, database: "nodebird", host: "127.0.0.1", dialect: "m..
  • 표현 언어와 JSTL을 이용한 회원 관리 실습
    프로그래밍 언어/자바 웹 · 댓글 1
    1. sec02.ex01 패키지를 만들고 13장에서 사용한 MemberBean 클래스와 MemberDAO 클래스를 복사해 붙여 넣습니다. 그리고 test06 폴더를 member_action.jsp, memberForm.jsp, memberList.jsp를 생성합니다. 2. memberForm.jsp를 다음과 같이 작성합니다. 회원 가입창에서 회원 정보를 입력한 후 action의 member_action.jsp로 전송합니다. 4. memberList.jsp를 다음과 같이 작성합니다. 자바 코드를 이용하지 않고 표현 언어와 JSTL만 사용하여 회원 정보를 표시합니다. 아이디 비밀번호 이름 이메일 가입일 등록된 회..
  • 기준금리 데이터 불러오기
    프로그래밍 언어/Python · 댓글
    파이썬 패키지 준비하기pathlib 패키지pathlib 패키지를 사용하여 이번 장에서 사용할 폴더를 만들어보겠습니다. 현재 작업 폴더를 'ch_09'이라고 가정합니다. 비주얼 스튜디오 코드에서 새로운 파일을 생성하고 파일명을 'step_1_1.py'로 변경합니다. 다음과 같이 코드를 입력한 뒤 대화형 창에서 실행하면, 현재 작업 폴더의 하위 경로에 'output' 폴더가 생성됩니다.from pathlib import PathWORK_DIR = Path(__file__).parentOUT_DIR = WORK_DIR / WORK_DIR / "output"if __name__ == "__main__": OUT_DIR.mkdir(exists_ok=True) 파이썬 외부 패키지이번 장에서 사용할 외부 패키..
  • AWS와 GCP로 배포하기 - 서비스 운영을 위한 패키지
    프로그래밍 언어/NODE JS · 댓글
    morgan과 express-session현재 익스프레스 미둘웨어 중 일부가 개발용 설정되어 있습니다. 이 미들웨어들을 배포용으로 설정할 것입니다.const express = require("express");const cookieParser = require("cookie-parser");const morgan = require("morgan");const path = require("path");const session = require("express-session");const nunjucks = require("nunjucks");const dotenv = require("dotenv");const passport = require("passport");dotenv.config();const p..
  • 문자열 처리 함수 사용하기
    프로그래밍 언어/자바 웹 · 댓글 1
    자바에서 문자열을 처리할 때 사용하는 문자열 관련 기능을 JSTL에서 제공하는 함수를 이용해 JSP에서도 사용할 수 있습니다. 아래 표는 JSTL에서 제공하는 문자열 함수들입니다. 표에 나오지 않는 문자열 기능을 자바 String 클래스의 메서드 기능을 참고하지 바랍니다. JSTL에서 제공하는 여러 가지 문자열 함수함수반환설명fn.contains(A, B)boolean문자열 A에 문자열 B가 포함되어 있는지 확인합니다.fn.endWith(A, B)boolean문자열 A의 끝이 B로 끝나는지 확인합니다.fn.indexOf(A, B)int문자열 A에서 B가 처음으로 인덱스(index)를 반환합니다.fn.length(A)int문자열 A의 전체 길이를 반환합니다.fn.replace(A, B, C)String문자..
  • 연관 키워드 분석 앱 만들기 - 데이터프레임 시각화하기
    프로그래밍 언어/Python · 댓글
    웹 앱에서 데이터프레임의 인덱스 표시를 숨기고, 숫자 표시 부분에 막대 그래프를 넣어서 수치가 전체 데이터에서 어느 정도를 차지하는지 확인할 수 있게 만듭니다. ch08/step_3_2.pyimport pandas as pdimport streamlit as stfrom streamlit.column_config import NumberColumn, ProgressColumn # 열 스타일 지정 # 03from step_2_4 import OUT_2_4 # 이전에 작성한 모듈을 불러옵니다.from step_3_1 import analyze_keywords, init_pagedef print_dataframe_with_style(keywords: str = None, event: int = None): ..
  • commander, inquirer 사용하기(3)
    프로그래밍 언어/NODE JS · 댓글
    마지막으로 chalk 패키지를 사용합니다. 이 패키지가 특별한 기능을 가진 것은 아니며, 검은색과 흰색밖에 없는 터미널에 색과 스타일을 추가합니다.#!/usr/bin/env nodeconst { program } = require("commander");const fs = require("fs");const path = require("path");const inquirer = require("inquirer");const chalk = require("chalk");const htmlTemplate = ` Hello CLI`;const routerTemplate = `const express = require('express');const router = express.Router();router...
  • 나만의 블로그 만들기
    바이브 코딩/Cursor AI · 댓글
    01 개발을 시작하지 전에는 먼저 계획을 세웁니다. Sequential Thinking을 활성화하여 생각하게 만들어보겠습니다. 새 폴더를 열고 준비합니다. 만약 Sequential Thinking이 제대로 동작하지 않으면 다시 요청하거나 커서 설정을 확인해보는 것도 좋습니다.정적 페이지 빌드가 되는 프로그램을 만들어서 깃허브 페이지에 블로그를 호스팅하려고 해. 내가 원하는 필수 기능은 다음과 같아.1. 정적 페이지로 빌드를 할 수 있어야 해. 빌드한 결과물을 깃허브 페이지에 호스팅할 거야.2. 마크다운으로 글을 작성할 수 있어야 하고, 마크다운으로 작성한 파일을 멋지게 렌더링해야 해.3. 메뉴는 Home, About, Blog가 있고, 파일은 월별로 관리할 수 있어야 해.4. 마크다운 파일에 태그와 카테..
  • 포매팅 태그 라이브러리 사용 실습
    프로그래밍 언어/자바 웹 · 댓글
    1. 다음과 같이 formatTest.jsp 파일을 준비합니다. 2. 다음과 같이 formatTest.jsp를 작성합니다. 변수 price를 태그를 이용해 숫자를 포맷팅하고 price 값을 각각의 형식에 맞게 출력합니다. 이때 price의 값을 새 자리마다 콤마(,)로 구분해서 표시합니다. 단, groupingUsed를 false로 설정한 경우는 콤마(,)를 표시하지 않으며 태그의 var 속성에 설정한 priceNumber로 포매팅한 숫자를 표현 언어에서 출력합니다. fmt의 number 태그를 이용한 숫자 포맷팅 예제. 통화로 표현 시 : 퍼센트로 표현 시 : 일반 숫자로 표현 시 : ${priceNumber} for..
  • 연관 키워드 경쟁 강도 분석 및 웹 앱 만들기
    프로그래밍 언어/Python · 댓글
    streamlit 패키지를 사용해서 지금까지 분석한 연관 키워드 경쟁 강도 분석 데이터를 웹 앱으로 만들어 봅시다.비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_3_1.py'로 저장하세요. 다음 코드를 입력한 후, 비주얼 스튜디오 코드에서 터미넣을 열고, 'streamlit run ch_08/step_3_1.py' 명령어로 웹 서버를 실행합니다.ch_08/step_3_1.pyimport pandas as pdimport streamlit as stfrom step_2_1 import rel_kwd_to_csv # 이전에 작성한 모듈을 불러옵니다.from step_2_2 import data_cleaningfrom step_2_3 import shop_cnt_to_csvfrom ste..

JSP에서 파일 업로드

파일 업로드 라이브러리 설치 파일 업로드 기능을 사용하려면 오픈 소스 라이브러리를 설치해야 합니다. 파일 업로드 라이브러리를 설치하고 과정은 다음과 같습니다. 1. jakarta.apache.org로 접속한 후 왼쪽 메뉴에서 Commons를 클릭합니다. 2. 페이지 왼쪽 중간쯤에 위치한 FileUpload를 클릭합니다. 3. Releases에 있는 download site을 클릭합니다.4. commons-fileupload-1.6.0-bin.zip을 클릭해 다운로드합니다. 5. zip 파일의 압축을 풉니다. 6. 압축을 푼 폴더의 하위 폴더인 commons-fileupload-1.3.3-bin에 위치한 commons-fileupload-1.6.0.jar 파일을 복사합니다. 7. 프로젝트 pro15의 WE..

통계 조회 시간 설정 API 사용하기 - 국내총생산 데이터 샘플 사용하기

통계 조회 조건 설정 API를 사용해서 국내총생산과 기준금리 데이터를 수집합니다. ECOS API를 사용하기 위해서는 다음 세 가지 데이터를 반드시 확인해야 합니다. ① API 주소: HTTP 요청 메시지를 보낼 ECOS API 서버의 주소② 요청인자: ECOS API 요청 시 서버에 전달해야 할 입력 데이터③ 출력값: ECOS API 요청에 대한 서버의 출력 데이터 국내총생산 데이터 샘플 사용하기01 지표별 과거 데이터를 얻기 위해 ECOS 한국은행 Open API 서비스(https://ecos.bok.or.kr/api/#/) 페이지 상단에서 [개발 가이드]-[개발 명세서]를 클릭한 뒤, [개발 명세서] 창의 서비스 명에서 [통계 조회 조건 설정] 탭을 클릭합니다. '상세주소'와 '요청인자'가 각각 ..

AWS와 GCP로 배포하기 - 서비스 운영을 위한 패키지(2)

시퀄라이즈데이터베이스도 배포 환경으로 설정합니다. 시퀄라이즈의 경우 수정이 필요합니다. 시퀄라이즈에서 가장 큰 문제는 비밀번호가 하드 코딩되어 있다는 것이며, JSON 파일이므로 변수를 사용할 수 없습니다. 다행히 시퀄라이즈는 JSON 대신 JS 파일울 설정 파일로 쓸 수 있게 지원합니다. config 폴더에서 config.json을 지우고 config.js를 생성합니다.require("dotenv").config();module.exports = { development: { username: "root", password: process.env.SEQUELIZE_PASSWORD, database: "nodebird", host: "127.0.0.1", dialect: "m..

표현 언어와 JSTL을 이용한 회원 관리 실습

1. sec02.ex01 패키지를 만들고 13장에서 사용한 MemberBean 클래스와 MemberDAO 클래스를 복사해 붙여 넣습니다. 그리고 test06 폴더를 member_action.jsp, memberForm.jsp, memberList.jsp를 생성합니다. 2. memberForm.jsp를 다음과 같이 작성합니다. 회원 가입창에서 회원 정보를 입력한 후 action의 member_action.jsp로 전송합니다. 4. memberList.jsp를 다음과 같이 작성합니다. 자바 코드를 이용하지 않고 표현 언어와 JSTL만 사용하여 회원 정보를 표시합니다. 아이디 비밀번호 이름 이메일 가입일 등록된 회..

기준금리 데이터 불러오기

파이썬 패키지 준비하기pathlib 패키지pathlib 패키지를 사용하여 이번 장에서 사용할 폴더를 만들어보겠습니다. 현재 작업 폴더를 'ch_09'이라고 가정합니다. 비주얼 스튜디오 코드에서 새로운 파일을 생성하고 파일명을 'step_1_1.py'로 변경합니다. 다음과 같이 코드를 입력한 뒤 대화형 창에서 실행하면, 현재 작업 폴더의 하위 경로에 'output' 폴더가 생성됩니다.from pathlib import PathWORK_DIR = Path(__file__).parentOUT_DIR = WORK_DIR / WORK_DIR / "output"if __name__ == "__main__": OUT_DIR.mkdir(exists_ok=True) 파이썬 외부 패키지이번 장에서 사용할 외부 패키..

AWS와 GCP로 배포하기 - 서비스 운영을 위한 패키지

morgan과 express-session현재 익스프레스 미둘웨어 중 일부가 개발용 설정되어 있습니다. 이 미들웨어들을 배포용으로 설정할 것입니다.const express = require("express");const cookieParser = require("cookie-parser");const morgan = require("morgan");const path = require("path");const session = require("express-session");const nunjucks = require("nunjucks");const dotenv = require("dotenv");const passport = require("passport");dotenv.config();const p..

문자열 처리 함수 사용하기

자바에서 문자열을 처리할 때 사용하는 문자열 관련 기능을 JSTL에서 제공하는 함수를 이용해 JSP에서도 사용할 수 있습니다. 아래 표는 JSTL에서 제공하는 문자열 함수들입니다. 표에 나오지 않는 문자열 기능을 자바 String 클래스의 메서드 기능을 참고하지 바랍니다. JSTL에서 제공하는 여러 가지 문자열 함수함수반환설명fn.contains(A, B)boolean문자열 A에 문자열 B가 포함되어 있는지 확인합니다.fn.endWith(A, B)boolean문자열 A의 끝이 B로 끝나는지 확인합니다.fn.indexOf(A, B)int문자열 A에서 B가 처음으로 인덱스(index)를 반환합니다.fn.length(A)int문자열 A의 전체 길이를 반환합니다.fn.replace(A, B, C)String문자..

연관 키워드 분석 앱 만들기 - 데이터프레임 시각화하기

웹 앱에서 데이터프레임의 인덱스 표시를 숨기고, 숫자 표시 부분에 막대 그래프를 넣어서 수치가 전체 데이터에서 어느 정도를 차지하는지 확인할 수 있게 만듭니다. ch08/step_3_2.pyimport pandas as pdimport streamlit as stfrom streamlit.column_config import NumberColumn, ProgressColumn # 열 스타일 지정 # 03from step_2_4 import OUT_2_4 # 이전에 작성한 모듈을 불러옵니다.from step_3_1 import analyze_keywords, init_pagedef print_dataframe_with_style(keywords: str = None, event: int = None): ..

commander, inquirer 사용하기(3)

마지막으로 chalk 패키지를 사용합니다. 이 패키지가 특별한 기능을 가진 것은 아니며, 검은색과 흰색밖에 없는 터미널에 색과 스타일을 추가합니다.#!/usr/bin/env nodeconst { program } = require("commander");const fs = require("fs");const path = require("path");const inquirer = require("inquirer");const chalk = require("chalk");const htmlTemplate = ` Hello CLI`;const routerTemplate = `const express = require('express');const router = express.Router();router...

나만의 블로그 만들기

01 개발을 시작하지 전에는 먼저 계획을 세웁니다. Sequential Thinking을 활성화하여 생각하게 만들어보겠습니다. 새 폴더를 열고 준비합니다. 만약 Sequential Thinking이 제대로 동작하지 않으면 다시 요청하거나 커서 설정을 확인해보는 것도 좋습니다.정적 페이지 빌드가 되는 프로그램을 만들어서 깃허브 페이지에 블로그를 호스팅하려고 해. 내가 원하는 필수 기능은 다음과 같아.1. 정적 페이지로 빌드를 할 수 있어야 해. 빌드한 결과물을 깃허브 페이지에 호스팅할 거야.2. 마크다운으로 글을 작성할 수 있어야 하고, 마크다운으로 작성한 파일을 멋지게 렌더링해야 해.3. 메뉴는 Home, About, Blog가 있고, 파일은 월별로 관리할 수 있어야 해.4. 마크다운 파일에 태그와 카테..

포매팅 태그 라이브러리 사용 실습

1. 다음과 같이 formatTest.jsp 파일을 준비합니다. 2. 다음과 같이 formatTest.jsp를 작성합니다. 변수 price를 태그를 이용해 숫자를 포맷팅하고 price 값을 각각의 형식에 맞게 출력합니다. 이때 price의 값을 새 자리마다 콤마(,)로 구분해서 표시합니다. 단, groupingUsed를 false로 설정한 경우는 콤마(,)를 표시하지 않으며 태그의 var 속성에 설정한 priceNumber로 포매팅한 숫자를 표현 언어에서 출력합니다. fmt의 number 태그를 이용한 숫자 포맷팅 예제. 통화로 표현 시 : 퍼센트로 표현 시 : 일반 숫자로 표현 시 : ${priceNumber} for..

연관 키워드 경쟁 강도 분석 및 웹 앱 만들기

streamlit 패키지를 사용해서 지금까지 분석한 연관 키워드 경쟁 강도 분석 데이터를 웹 앱으로 만들어 봅시다.비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_3_1.py'로 저장하세요. 다음 코드를 입력한 후, 비주얼 스튜디오 코드에서 터미넣을 열고, 'streamlit run ch_08/step_3_1.py' 명령어로 웹 서버를 실행합니다.ch_08/step_3_1.pyimport pandas as pdimport streamlit as stfrom step_2_1 import rel_kwd_to_csv # 이전에 작성한 모듈을 불러옵니다.from step_2_2 import data_cleaningfrom step_2_3 import shop_cnt_to_csvfrom ste..