프로그래밍 75

[웹] JSP 예제(MySQL과 연동, 웹 브라우저 출력)(2)

※ 개요 요구사항 4) 멤버 상세정보 창에서 삭제 기능, 목록창으로 가는 기능을 가진 버튼을 제작 요구사항 5) 멤버 추가하기 요구사항 4) 멤버 상세정보 창에서 삭제 기능, 목록창으로 가는 기능을 가진 버튼을 제작 * Member.jsp - 삭제, 목록 버튼 추가 수정 삭제 목록 - script에 삭제, 목록 함수 추가 * MemDAO.java: 삭제 함수 추가 public void delete(int num) { conn = getConn(); String sql = "DELETE FROM member WHERE num = ?;"; try { pstmt = conn.prepareStatement(sql); pstmt.setInt(1, num); int n = pstmt.executeUpdate(); ..

프로그래밍 2021.06.23

[데이터 수집] 빅데이터 수집 시스템 개발(Selenium)

※ Selenium - 웹 브라우저를 실행하여 조종하는 방식을 사용 - Web Driver: 각 웹 브라우저를 조종하기 위한 드라이버 사용 - Python Code => Web Driver => Web Browser - 사용하기 이전 준비: Selenium 설치 & Web Driver 다운로드 * Import from bs4 import BeautifulSoup from selenium import webdriver import requests * selenium's webdriver 활용 예제 driver = webdriver.Chrome('./chromedriver') driver.implicitly_wait(1) driver.get('http://www.kyobobook.co.kr/index.laf..

프로그래밍 2021.06.22

[R] 데이터 시각화 정의(XAMPP 다운로드, 시각화 예제, 자료 수집)

※ XAMPP 다운로드 XAMPP는 크로스 플랫폼 웹 서버 자유 소프트웨어 패키지다(아파치 웹 서버, MariaDB, PHP, Perl을 포함) ※ 데이터 시각화 예제 0. 서버 실행 실행 후, localhost에 접속하면 다음 창이 나타난다. localhost로 연결하는 파일의 위치: C:\xampp\htdocs 1. http://d3js.org접속 D3.js - Data-Driven Documents D3 is a JavaScript library for visualizing data with HTML, SVG, and CSS. d3js.org 2. 샘플 예제 테스트를 위해 See More Example 메뉴 선택 3. D3js 사이트에 있는 Bubblechart 예제 선택 4. bubble-char..

프로그래밍 2021.06.22

[웹] JSP 예제(MySQL과 연동, 웹 브라우저 출력)(1)

※ 개요 요구사항 1) 리스트 요청 URL 제작 -> 서블릿 실행 -> 서비스 -> DAO -> List -> memList.jsp -> 웹 브라우저 표시 요구사항 2) List가 나온 페이지에서 '이름'을 클릭하면 리스트 대신, 해당하는 사람의 정보만 출력 요구사항 3) 상세정보 창에서 수정버튼을 누르면 수정할 수 있는 폼이 나오고, 완료를 누르면 반영된 리스트 출력 요구사항 1) 리스트 요청 URL 제작 -> 서블릿 실행 -> 서비스 -> DAO -> List -> memList.jsp -> 웹 브라우저 표시 1. 리스트 요청 URL 제작(서블릿 제작) http://localhost/MyWeb/mem?cmd=list - mem: MemberServlet - 요청 URL을 입력했을 때 해당 서블릿이 실..

프로그래밍 2021.06.22

[HTML] jQuery, AJAX 활용

* 동기식 통신 - 웹 브라우저가 요청 후 응답이 도착할 때까지는 이용자와 상호작용 불가 - 매우 소량의 데이터라도 웹 브라우저에 도달하면 전체 화면을 갱신 * 비동기식 통신 - 웹 페이지가 출력된 후라도 백그라운드로 서버에 요청이 가능 - 웹 브라우저가 이용자와 상호 작용하면서도 내부적으로 서버에 요청 및 응답을 처리 - 서버로부터 응답이 도착하면 개발자가 응답을 변수에 저장할 수 있다. - 개발자는 필요시 화면의 일부분에 응답을 출력할 수 있다. - Ajax ※ jQuery * jQuery 라이브러리를 사용하나 AJAX 통신을 선호 * jQuery 라이브러리 설치 / 테스트 1) https://code.jquery.com/ 이동 2) minified에서 script 내용을 복사하여 html 파일의 -..

프로그래밍 2021.06.21

[Web] Login Process 제작

※ 개요 - Login 서블릿 작성 및 테스트 LoginForm.html에 포함된 id, pwd 파라미터를 Login 서블릿에 전송하고 Login 서블릿은 파라미터를 접수하여 다음과 같은 방법으로 인증한다. 이용자의 id는 'smith'이고, pwd는 '0000'인지 확인하여 맞으면 '로그인 성공', 아니면 '로그인 실패' 메시지를 이용자의 웹 브라우저에 표시한다. - LoginServlet.java, Login.java, LoginResult.jsp으로 구성한다. (생각) - LoginServlet.java: service() 를 이용하여 웹 브라우저로부터 데이터를 입력받고, Login.java를 이용해 결과를 알아내어(Business Logic), LoginResult.jsp에 전달한다(Present..

프로그래밍 2021.06.17

[Web] 웹 사이트 개발(Tomcat, Servlet)

※ 개요 - 웹 서버가 실행할 수 있는 자바 프로그램 - 모든 웹 서비스는 웹 서버로부터 웹 클라이언트에게 정보 제공 - 정보 제공 형태는 HTML, CSS, Java Script(클라이언트로 도착해서 실행되는 코드) - 웹 브라우저가 프로그램이 실행되는 플랫폼이 되어가는 추세 * 정보 교환 과정 - 웹 브라우저(웹 클라이언트)를 사용해 구글 웹 서버에 접속한다. - 웹 브라우저 주소창에 http://google.com을 입력하고 엔터(웹 서버 접속) - Domain Name: google.com * 구성 - 물리적인 웹 서버 컴퓨터 - 접속 요청에 응답할 웹 서버 소프트웨어 - 웹 클라이언트 - 웹 서버 간의 통신 규약(HTTP) * Web Server SW 종류 - Apache Web Server: ..

프로그래밍 2021.06.16

[데이터 수집] 빅데이터 수집 시스템 개발(BeautifulSoup)

※ 개요 - 웹 크롤링(Web Crawling) - 웹 스크래핑(Web Scraping): 웹 페이지 내에서 정보를 수집 - 수집 툴 * requests * BeautifulSoup * Selenium: 동적인 컨텐츠까지 접근하여 수집 가능 - 웹 페이지 동작 순서 사용자 클릭 or 동작 -> 요청이 서버로 전달 -> 서버는 해당 컨텐츠 서칭 -> 웹 브라우저로 컨텐츠 다운로드(html 형태, 안에는 실행 가능한 Javascript 내장) -> 추가로 Javascript가 서버에 또 다른 컨텐츠 요청 가능 ※ Requests(웹서버에 대한 요청 전달) - 웹 서버에 접속 - 요청 ≒ 웹 브라우저 주소창에 URL을 입력하고 엔터를 치는 행위 ≒ URL 클릭(링크) - request response(형식: ..

프로그래밍 2021.06.15

[pyspark] pyspark 프로그래밍 예제2

※ employees.csv를 spark DataFrame으로 읽은 후, 아래 질의를 수행 - 급여(Salary)가 5000이상인 50번 부서 소속의 직원들을 대상으로 이름, 부서번호, 급여액을 표시 employee_sdf = spark.read.csv('C:\\labs\\employees.csv', header = True, inferSchema = True) employee_sdf.printSchema() employee_sdf.show() # SQL을 사용한 결과 employee_sdf.createOrReplaceTempView('employees') spark.sql('SELECT LAST_NAME, DEPARTMENT_ID, SALARY FROM employees WHERE SALARY >= 5..

프로그래밍 2021.06.11

[pyspark] pyspark 프로그래밍 예제

※ 3행 3열의 정수 행렬을 생성하고, pandas DataFrame으로 로드한다. import pandas as pd import numpy as np matrix = pd.DataFrame(np.random.randint(0, 100, size = (3, 3)), columns = ['a', 'b', 'c']) matrix ※ pandas DataFrame을 다시 spark.DataFrame으로 변환하여 example.csv로 저장한다. sdf = spark.createDataFrame(matrix) sdf.show() sdf.toPandas().to_csv('C:\\labs\\random.csv', sep=',', index=False) ※ example.csv 파일을 읽어서 spark DataFr..

프로그래밍 2021.06.10