목록

'홈' 731건

  • out 내장 객체 이용해 데이터 출력하기
    프로그래밍 언어/자바 웹 · 댓글
    1. 다음과 같이 실습 파일 out1.jsp, out2.jsp를 준비합니다. 2. 첫 번째 JSP 페이지인 out1.jsp를 작성합니다. 이름과 나이를 두 번째 JSP로 전송합니다. 이름: 나이: 3. 두 번째 JSP 페이지인 out2.jsp를 작성합니다. 전송된 이름과 표현식과 out 내장 객체를 이용해 출력합니다. , 이름을 입력하세요 이름을 입력하세요 4. 브라우저에서 요청하여 다음과 같이 나이를 입력한 후 전송합니다. 5. 전달받은 정보를 표현식과 out 내장 객체를 출력합니다. out 내장 객체를 이용해 스크립트릿으로 출력하면 복잡한 코드를 상대적으로 간단하게 출력할 수 있습니다.
  • 분류별 지출 합계 구하기
    프로그래밍 언어/Python · 댓글
    액셀에서 피벗 테이블(pick table)을 사용하면 데이터의 분류, 요약, 통계 등의 작업을 빠르고 편리하게 처리할 수 있습니다. 예를 들어 2024년 1분기 카드 명세서의 지출 내역을 분류 열을 기준으로 요약하면 카드 지출을 어디에 많이, 또는 적게 했는지 파악할 수 있습니다. 분류별 지출 합계 구하기∨ 문법 체크 pandas 패키지의 함수 pivot_table()pandas 패키지의 pivot_table() 함수는 매개변수의 값에 따라 다양한 옵션을 설정할 수 있습니다.pd.pivot_table( df, # 파벗 테이블을 만들 데이터프레임 index="row", # 피벗 테이블의 행이 될 집계 기준 열 columns="column", # 피벗 테이블의 열이 될 집계 기준 열 values="value..
  • 카카오 로그인 구현하기 (1)
    프로그래밍 언어/NODE JS · 댓글
    카카오 로그인이란 로그인 인증 과정을 카카오에 맡기는 것을 뜻합니다. 사용자는 번거롭게 새로운 사이트에 회원가입하지 않아도 되므로 좋고, 서비스 제공자는 로그인 과정을 검증된 SNS에 안심하고 맡길 수 있어 좋습니다.SNS 로그인의 특징은 회원가입 절차가 따라 없다는 것입니다. 처음 로그인할 때는 회원가입 처리를 해야 하고, 두 번째 로그인부터는 로그인 처리를 해야 합니다. 따라서 SNS 로그인 전략은 로컬 로그인 전략보다 다소 복잡합니다.const passport = require("passport");const kakaoStrategy = require("passport-kakao").Strategy;const User = require("../models/user");module.exports = ..
  • request 내장 객체에 데이터 바인딩 실습
    프로그래밍 언어/자바 웹 · 댓글
    1. request 내장 객체 실습 파일인 request1.jsp, request2.jsp를 준비합니다. 2. 첫 번째 JSP인 request1.jsp를 다음과 같이 작성합니다. 브라우저의 요청에 대한 request 객체에 name과 address를 바인딩합니다. 그리고 RequestDispatcher를 이용해 request 객체를 두 번째 JSP로 전송합니다. 3. 두 번째 JSP인 request2.jsp를 다음과 같이 작성합니다. 첫 번째 JSP에서 전송된 request 객체에서 바인딩된 name과 address를 가져옵니다. 이름은 입니다. 주소는 입니다. 4. 브라우저에서 request1.jsp로 요청하면 request 객체에 바인딩한 후 request2.jsp로 포워딩하여 이름과 주소를 출력..
  • 1분기 3개의 카드 명세서 하나로 취합하기
    프로그래밍 언어/Python · 댓글
    'ch_02/input' 폴더에 있는 5개의 카드 명세서 파일 '2024년1월.xlsx', '2024년2월.xlsx', '2024년3월.xlsx'를 하나로 취합해 봅시다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_2_2.py'로 변경합니다. 다음과 같이 코드를 작성한 뒤, 대화형 창에서 실행하면 액셀 파일로 저장된 3개의 카드 명세서가 하나의 리스트로 출력됩니다.from pathlib import Pathimport pandas as pdfrom step_1 import IN_DIR, OUT_DIR # 이전에 작성한 모듈을 불러옵니다.result = [] # 5for xlsx_path in Path(IN_DIR).glob("2024년*월.xlsx"): # 6 df_raw ..
  • 로컬 로그인 구현하기 (2)
    프로그래밍 언어/NODE JS · 댓글
    회원가입, 로그인, 로그아웃 라우터를 작성합니다.routes/auth.jsconst express = require("express");const passport = require("passport");const bcrypt = require("bcrypt");const { isLoggedIn, isNotLoggedIn } = require("./middlewares");const User = require("../models/user");const router = express.Router();router.post("/join", isNotLoggedIn, async (req, res, next) => { const { email, nick, password } = req.body; try { ..
  • application 내장 객체에 데이터 바인딩 실습
    프로그래밍 언어/자바 웹 · 댓글
    1. 다음과 같이 appTest1.jsp, appTest2.jsp 실습 파일을 준비합니다. 2. appTest1.jsp를 다음과 같이 작성합니다. 첫 번째 JSP에서 session과 application 내장 객체에 name과 address 값을 바인딩합니다. 이름과 주소를 저장합니다. 두 번째 웹 페이지로 이동 3. appTest2.jsp를 다음과 같이 작성합니다. 첫 번째 JSP에서 session과 application 대상 객체에 바인딩한 값을 가져옵니다. 이름은 입니다. 주소는 입니다. 4. http:localhost:8090/pro12/test01/appTest1.jsp로 요청합니다. 첫 번째 JSP에서 name과 address를 session과 application에 바인딩합니다. 5. 같은 ..
  • 월별 명세서 취합하기 - 카드 명세서에서 데이터 불러오기
    프로그래밍 언어/Python · 댓글 1
    효율적인 데이터 분석을 위해 여러 데이터 파일을 하나로 취합하는 일은 실무에서도 자주 맞닥뜨리게 되는데요. 이때 파이썬과 pandas 패키지를 사용하면 파일을 일일이 열어서 데이터를 옮기는 대신, 코드 몇 줄만으로 작업을 마칠 수 있습니다. 카드 명세서에서 필요한 데이터 불러오기소스 코드 'ch_02/input' 폴더에 있는 액셀 파일에서 거래 일시, 가맹점명, 분류, 사용금액 데이터를 데이터프렝임으로 불러와 파이썬 코드로 다뤄 보겠습니다.필요한 데이터는 [B3] 셀부터 [E37] 셀에 저장되어 있고, 나머지는 불필요하거나 빈 셀입니다. 불러올 열 범위를 B열부터 E열까지로 지정하고, 첫 두 개의 행을 제외하면 됩니다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_2_1.py'로 ..
  • 월별 카드 지출 내역 분석 - 카드 명세서 다운로드
    프로그래밍 언어/Python · 댓글
    모든 데이터는 자료실(https://github.com/himoon/gopython)에서 다운로드할 수 있습니다. 자료실에 장별 프로젝트의 소스 코드와 입력 파일, 출력 결과과 모두 저장되어 있으므로 전체 폴더를 다운로드하고, 장 번호에 맞는 파일을 확인합니다. 입력 파일은 'input' 폴더에 출력 결과는 'output' 폴더에서 확인할 수 있습니다. 앞으로는 파이썬에서 액셀 파일을 다루기 위해 셀에 저장된 데이터를 데이터프레임(dataframe)으로 변환하여 저장할 것입니다. 데이터프레임은 pandas 패키지의 자료구조 중 하나로, 행과 열로 구성된 객체입니다. 파이썬에서 데이터프레임은 리스트 또는 딕셔너리를 활용해 생성하는 것이 일반적입니다. 리스트를 활용하여 생성한 데이터프레임import pand..
  • 로컬 로그인 구현하기(1)
    프로그래밍 언어/NODE JS · 댓글
    로컬 로그인이란 다른 SNS 서비스를 통해 로그인하지 않고 자체적으로 회원가입 후 로그인하는 것을 의미합니다. 즉, 아이디/비밀번호 또는 이메일/비밀번호를 통해 로그인하는 것입니다.Passport에서 이를 구현하려면 passport-local 모듈이 필요합니다. 이미 설치했으므로 로컬 로그인 전략만 세우면 됩니다. 로그인에만 해당하는 전략이므로 회원가입은 따로 만들어야 합니다.routes/middlewares.jsexports.isLoggedId = (req, res, next) => { if (req.isAuthenticated()) { next(); } else { res.status(403).send("로그인 필요"); }};exports.isNotLoggedIn = (req, re..
  • session 내장 객체에 데이터 바인딩 실습
    프로그래밍 언어/자바 웹 · 댓글
    1. JSP 파일이 많아지므로 test01 폴더를 만든 후 session1.jsp, session2.jsp 등 실습 파일들을 생성합니다. 2. SessionTest 클래스를 다음과 같이 작성합니다. 서블릿에서 getSession() 메서드를 이용해 session 객체를 얻은 후 name을 바인딩합니다.package sec01.ex01;import java.io.IOException;import java.io.PrintWriter;import java.rmi.ServerException;import jakarta.servlet.http.HttpServlet;import jakarta.servlet.http.HttpServletRequest;import jakarta.servlet.http.HttpServl..
  • 월별 카드 지출 내역 분석 - 파이썬 패키지 준비하기
    프로그래밍 언어/Python · 댓글
    패키지(package)는 특정 기능을 구현한 모듈(module)을 모아 둔 폴더로, 패키지를 활용하면 미리 작성된 코드를 재사용할 수 있어 매우 유용합니다. 파이썬은 방대한 커뮤니티를 기반으로 다양한 패키지를 제공하며, 이 패키지들 외부 데이터를 손쉽게 불러오고 처리하는 기능을 제공합니다. 이러한 장점 덕분에 파이썬은 데이터 관리와 분석에 최적화된 프로그래밍 언어로 자리잡았습니다. 파이썬 패키지 준비하기 pathlib 패키지현재 작업 폴더를 'ch_02'로 가정하고 하위 경로에 두 폴더 'input'과 'output'을 생성합니다.'input' 폴더는 앞으로 실습 프로젝트를 진행하며 불러올 액셀 파일을 저장하는 폴더로 사용하고, 'output' 폴더는 코드의 실행 결과를 저장하는 폴더로 사용합니다.비주얼..

out 내장 객체 이용해 데이터 출력하기

1. 다음과 같이 실습 파일 out1.jsp, out2.jsp를 준비합니다. 2. 첫 번째 JSP 페이지인 out1.jsp를 작성합니다. 이름과 나이를 두 번째 JSP로 전송합니다. 이름: 나이: 3. 두 번째 JSP 페이지인 out2.jsp를 작성합니다. 전송된 이름과 표현식과 out 내장 객체를 이용해 출력합니다. , 이름을 입력하세요 이름을 입력하세요 4. 브라우저에서 요청하여 다음과 같이 나이를 입력한 후 전송합니다. 5. 전달받은 정보를 표현식과 out 내장 객체를 출력합니다. out 내장 객체를 이용해 스크립트릿으로 출력하면 복잡한 코드를 상대적으로 간단하게 출력할 수 있습니다.

분류별 지출 합계 구하기

액셀에서 피벗 테이블(pick table)을 사용하면 데이터의 분류, 요약, 통계 등의 작업을 빠르고 편리하게 처리할 수 있습니다. 예를 들어 2024년 1분기 카드 명세서의 지출 내역을 분류 열을 기준으로 요약하면 카드 지출을 어디에 많이, 또는 적게 했는지 파악할 수 있습니다. 분류별 지출 합계 구하기∨ 문법 체크 pandas 패키지의 함수 pivot_table()pandas 패키지의 pivot_table() 함수는 매개변수의 값에 따라 다양한 옵션을 설정할 수 있습니다.pd.pivot_table( df, # 파벗 테이블을 만들 데이터프레임 index="row", # 피벗 테이블의 행이 될 집계 기준 열 columns="column", # 피벗 테이블의 열이 될 집계 기준 열 values="value..

카카오 로그인 구현하기 (1)

카카오 로그인이란 로그인 인증 과정을 카카오에 맡기는 것을 뜻합니다. 사용자는 번거롭게 새로운 사이트에 회원가입하지 않아도 되므로 좋고, 서비스 제공자는 로그인 과정을 검증된 SNS에 안심하고 맡길 수 있어 좋습니다.SNS 로그인의 특징은 회원가입 절차가 따라 없다는 것입니다. 처음 로그인할 때는 회원가입 처리를 해야 하고, 두 번째 로그인부터는 로그인 처리를 해야 합니다. 따라서 SNS 로그인 전략은 로컬 로그인 전략보다 다소 복잡합니다.const passport = require("passport");const kakaoStrategy = require("passport-kakao").Strategy;const User = require("../models/user");module.exports = ..

request 내장 객체에 데이터 바인딩 실습

1. request 내장 객체 실습 파일인 request1.jsp, request2.jsp를 준비합니다. 2. 첫 번째 JSP인 request1.jsp를 다음과 같이 작성합니다. 브라우저의 요청에 대한 request 객체에 name과 address를 바인딩합니다. 그리고 RequestDispatcher를 이용해 request 객체를 두 번째 JSP로 전송합니다. 3. 두 번째 JSP인 request2.jsp를 다음과 같이 작성합니다. 첫 번째 JSP에서 전송된 request 객체에서 바인딩된 name과 address를 가져옵니다. 이름은 입니다. 주소는 입니다. 4. 브라우저에서 request1.jsp로 요청하면 request 객체에 바인딩한 후 request2.jsp로 포워딩하여 이름과 주소를 출력..

1분기 3개의 카드 명세서 하나로 취합하기

'ch_02/input' 폴더에 있는 5개의 카드 명세서 파일 '2024년1월.xlsx', '2024년2월.xlsx', '2024년3월.xlsx'를 하나로 취합해 봅시다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_2_2.py'로 변경합니다. 다음과 같이 코드를 작성한 뒤, 대화형 창에서 실행하면 액셀 파일로 저장된 3개의 카드 명세서가 하나의 리스트로 출력됩니다.from pathlib import Pathimport pandas as pdfrom step_1 import IN_DIR, OUT_DIR # 이전에 작성한 모듈을 불러옵니다.result = [] # 5for xlsx_path in Path(IN_DIR).glob("2024년*월.xlsx"): # 6 df_raw ..

로컬 로그인 구현하기 (2)

회원가입, 로그인, 로그아웃 라우터를 작성합니다.routes/auth.jsconst express = require("express");const passport = require("passport");const bcrypt = require("bcrypt");const { isLoggedIn, isNotLoggedIn } = require("./middlewares");const User = require("../models/user");const router = express.Router();router.post("/join", isNotLoggedIn, async (req, res, next) => { const { email, nick, password } = req.body; try { ..

application 내장 객체에 데이터 바인딩 실습

1. 다음과 같이 appTest1.jsp, appTest2.jsp 실습 파일을 준비합니다. 2. appTest1.jsp를 다음과 같이 작성합니다. 첫 번째 JSP에서 session과 application 내장 객체에 name과 address 값을 바인딩합니다. 이름과 주소를 저장합니다. 두 번째 웹 페이지로 이동 3. appTest2.jsp를 다음과 같이 작성합니다. 첫 번째 JSP에서 session과 application 대상 객체에 바인딩한 값을 가져옵니다. 이름은 입니다. 주소는 입니다. 4. http:localhost:8090/pro12/test01/appTest1.jsp로 요청합니다. 첫 번째 JSP에서 name과 address를 session과 application에 바인딩합니다. 5. 같은 ..

월별 명세서 취합하기 - 카드 명세서에서 데이터 불러오기

효율적인 데이터 분석을 위해 여러 데이터 파일을 하나로 취합하는 일은 실무에서도 자주 맞닥뜨리게 되는데요. 이때 파이썬과 pandas 패키지를 사용하면 파일을 일일이 열어서 데이터를 옮기는 대신, 코드 몇 줄만으로 작업을 마칠 수 있습니다. 카드 명세서에서 필요한 데이터 불러오기소스 코드 'ch_02/input' 폴더에 있는 액셀 파일에서 거래 일시, 가맹점명, 분류, 사용금액 데이터를 데이터프렝임으로 불러와 파이썬 코드로 다뤄 보겠습니다.필요한 데이터는 [B3] 셀부터 [E37] 셀에 저장되어 있고, 나머지는 불필요하거나 빈 셀입니다. 불러올 열 범위를 B열부터 E열까지로 지정하고, 첫 두 개의 행을 제외하면 됩니다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_2_1.py'로 ..

월별 카드 지출 내역 분석 - 카드 명세서 다운로드

모든 데이터는 자료실(https://github.com/himoon/gopython)에서 다운로드할 수 있습니다. 자료실에 장별 프로젝트의 소스 코드와 입력 파일, 출력 결과과 모두 저장되어 있으므로 전체 폴더를 다운로드하고, 장 번호에 맞는 파일을 확인합니다. 입력 파일은 'input' 폴더에 출력 결과는 'output' 폴더에서 확인할 수 있습니다. 앞으로는 파이썬에서 액셀 파일을 다루기 위해 셀에 저장된 데이터를 데이터프레임(dataframe)으로 변환하여 저장할 것입니다. 데이터프레임은 pandas 패키지의 자료구조 중 하나로, 행과 열로 구성된 객체입니다. 파이썬에서 데이터프레임은 리스트 또는 딕셔너리를 활용해 생성하는 것이 일반적입니다. 리스트를 활용하여 생성한 데이터프레임import pand..

로컬 로그인 구현하기(1)

로컬 로그인이란 다른 SNS 서비스를 통해 로그인하지 않고 자체적으로 회원가입 후 로그인하는 것을 의미합니다. 즉, 아이디/비밀번호 또는 이메일/비밀번호를 통해 로그인하는 것입니다.Passport에서 이를 구현하려면 passport-local 모듈이 필요합니다. 이미 설치했으므로 로컬 로그인 전략만 세우면 됩니다. 로그인에만 해당하는 전략이므로 회원가입은 따로 만들어야 합니다.routes/middlewares.jsexports.isLoggedId = (req, res, next) => { if (req.isAuthenticated()) { next(); } else { res.status(403).send("로그인 필요"); }};exports.isNotLoggedIn = (req, re..

session 내장 객체에 데이터 바인딩 실습

1. JSP 파일이 많아지므로 test01 폴더를 만든 후 session1.jsp, session2.jsp 등 실습 파일들을 생성합니다. 2. SessionTest 클래스를 다음과 같이 작성합니다. 서블릿에서 getSession() 메서드를 이용해 session 객체를 얻은 후 name을 바인딩합니다.package sec01.ex01;import java.io.IOException;import java.io.PrintWriter;import java.rmi.ServerException;import jakarta.servlet.http.HttpServlet;import jakarta.servlet.http.HttpServletRequest;import jakarta.servlet.http.HttpServl..

월별 카드 지출 내역 분석 - 파이썬 패키지 준비하기

패키지(package)는 특정 기능을 구현한 모듈(module)을 모아 둔 폴더로, 패키지를 활용하면 미리 작성된 코드를 재사용할 수 있어 매우 유용합니다. 파이썬은 방대한 커뮤니티를 기반으로 다양한 패키지를 제공하며, 이 패키지들 외부 데이터를 손쉽게 불러오고 처리하는 기능을 제공합니다. 이러한 장점 덕분에 파이썬은 데이터 관리와 분석에 최적화된 프로그래밍 언어로 자리잡았습니다. 파이썬 패키지 준비하기 pathlib 패키지현재 작업 폴더를 'ch_02'로 가정하고 하위 경로에 두 폴더 'input'과 'output'을 생성합니다.'input' 폴더는 앞으로 실습 프로젝트를 진행하며 불러올 액셀 파일을 저장하는 폴더로 사용하고, 'output' 폴더는 코드의 실행 결과를 저장하는 폴더로 사용합니다.비주얼..