Everyday, Challenge

전체 글 115

[Python]8. Pandas 라이브러리

Python_09_Pandas 라이브러리 Pandas 모듈: panel datas(행과 열로 구성된 데이터) -사용이유: 데이터를 표 형식으로 변환하여 데이터 분석에 편리함 2. 데이터 구조 1)1차원 배열 형태: Series 인덱스(index)+값(value) 컬럼명이 없음→컬럼명을 추가하면 2차원 배열 형태(DataFrame)임 2)2차원 배열 형태: DataFrame -행과 열로 구성된 표와 같은 형태 3. Pandas 모듈 import: import pandas as pd 4. Series 1)생성하기 리스트를 활용하여 Series 생성 생성방법: pd.Series([list], index=[인덱스명]) -인덱스와 값이 1:1매칭→인덱스의 개수와 값의 개수가 동일해야 함 2)자료구조 확인 Seri..

코딩/PYTHON 2023.06.22

[JSP]3. MVC 패턴으로 JDBC 만들기

[MVC 패턴] ● Model: 데이터를 담거나 전송하거나 수정, 삭제 ● Controller: logic 결과에 따라 적절한 view를 선택하여 응답 ● View: Model데이터를 기반으로 실제 사용자에게 보여지는 페이지 1. Model1: JSP만 사용, Controller, View 구분 x 2. Model2: View와 비즈니스 로직 부분을 분리 [회원가입/로그인 실습] 1. main.jsp: 태그, 태그 -회원가입 버튼 클릭 시 [join.jsp]로 이동 -로그인 버튼 클릭 시 [login.jsp]로 이동 2. join.jsp: 태그, 태그, 태그, 태그 -id, pw, name 입력하는 폼 만들기 -회원가입 버튼 클릭 시 [JoinProgram.java]로 이동 3. JoinProgram: ..

코딩/JSP&Servlet 2023.06.22

[JSP]2. 내장객체

JSP_03_내장객체 내장객체: JSP page 안에 선언하지 않고도 사용할 수 있는 객체 2. out객체 3. request 객체: 데이터 전달받는 객체 [실습1] [오류] 404 에러→보내는 주소와 받는 주소 비교(form 태그 action 주소 확인) 500 에러 →문법 오류(console창 오류 확인) [실습2] [실습3] 2번째 name을 하나로 통일하여 getParameterValues로 받아오기 4. response 객체 response.sendRedirect(): 요청 2번 [실습4]

코딩/JSP&Servlet 2023.06.21

[JSP]1. JSP의 구성요소

1. JSP의 필요성 -Servlet은 수정이 어려움 -프로그램이 복잡해지면 Servlet을 통해 출력되는 HTML페이지를 상상하기 어려움 -Servlet→java 기반 / JSP→HTML 기반 2. JSP(Java Server Page): HTML 내에 Java 코드를 작성하고 웹 서버에서 웹 페이지를 생성하여 Web browser에 돌려주는 Java 기반의 스크립트 언어→서블릿의 일종으로 서블릿으로 변환됨 3. JSP life Cycle 4. JSP의 구성요소 1)스크립트릿: JAVA 코드를 작성하는 부분, JSP는 HTML 기반이므로 줄여가는 것이 좋음 *jsp 파일 경로 *public void _jspService 메소드의 try-catch문에 스크립트릿에서 작성한 코드가 입력됨 2)표현식: 웹 ..

코딩/JSP&Servlet 2023.06.20

[Python]7. Numpy 라이브러리

1. 라이브러리(library) -자주 쓰는 함수, 변수들을 모아놓은 파이썬 파일 -자주 사용하는 기능을 모듈화, 패키지화 2. 라이브러리의 종류 1)표준라이브러리: 파이썬에서 기본으로 제공하는 라이브러리 예)Random 2)외부라이브러리: 개발자가 필요에 의해 개발한 패키지와 모듈의 집합 3. 모듈 사용하기 -모듈에 함수 정의 후 python 확장자로 다운로드하고 주피터 노트에 업로드 -새 파일에서 모듈 import하여 함수 사용하기 [데이터 분석 라이브러리] 1. numpy -파이썬 자료형 list와 비슷한 형태 -빠르고 효율적인 산술연산을 제공하는 다차원배열 제공(ndarray 클래스) -반복문 없이 전체 데이터 배열 연산이 가능한 표준 수학 함수(sum(), sqrt(), mean()) -사용방법..

코딩/PYTHON 2023.06.20

[Servlet]3. 데이터 전송방식(get/post)

Servlet_03_데이터 전송방식 HTTP: 인터넷 상에서 데이터를 주고받기 위한 서버/클라이언트 모델을 따르는 전송 프로토콜 2. GET 방식 url에 데이터를 얹어서 전송 데이터 길이에 제한(1024byte) url에 데이터가 노출되어 상대적으로 보안에 취약 method 속성에 따로 작성하지 않으면 기본값으로 적용 post 방식보다 전송속도가 빠름 →캐시(임시저장소)에 저장하기 때문에 같은 페이지를 다시 불러올 때 데이터를 다시 로딩하지 않아도 돼서 속도가 빠름 데이터 전송 전 데이터 전송 후 3. POST 방식: 대용량 데이터, 이미지 패킷의 body에 담아서 데이터 전송 데이터의 길이에 제한 없음 데이터가 노출되지 않기 때문에 get방식에 비해 보안에 강함 method 속성에 post라고 명시해..

코딩/JSP&Servlet 2023.06.19

[Python]6. 딕셔너리, 함수

Python_06_딕셔너리, 함수 [딕셔너리] 1. 딕셔너리 - key와 value를 한 쌍으로 갖는 자료형 -immutable한(불변적인)key와 mutable한(가변적인) value로 매핑(짝꿍)되어있는 순서가 없는 집합→key값으로 데이터를 불러옴 -순서(index)가 없으므로 인덱싱, 슬라이싱 불가 -값과 값의 특성을 표현하기 위해 사용 ex){김연아: 피겨} -key는 변하지 않는 값을 사용하고 value에는 변하는 값, 변하지 않는 값 모두 사용가능 예)key에 리스트는 불가, 튜플은 가능 2. 딕셔너리 선언 및 타입확인 -선언방법: 딕셔너리명={key:value, key: value, …} 3. 딕셔너리 값 조회하기 -딕셔너리 변수명[key] -딕셔너리 변수명.get(key) 4. 딕셔너리 ..

코딩/PYTHON 2023.06.19

[Servlet]2. 데이터 전송(get방식)

Servlet_02_데이터 전송(get) 1. URL Mapping: Web browser에서 Servlet을 동작시키기 위해 실제 Java 클래스 이름 대신 Servlet을 요청하기 위한 문자열을 Servlet 클래스와 Mapping시키는 것 웹 모듈이 4.0이상일 때 어노테이션 방식 사용 -사용방법: @Webservlet(“/매핑값”) -필수값, 주소 찾을 때 매핑값으로 주소 연결 -매핑값은 중복 불가 2. URL Pattern querystring: 전송할 데이터 URL: 네트워크 상에서 자원의 위치(웹사이트 주소+자원의 위치) URI: 자원의 위치(통합자원식별자) ServletPath: URL Mapping 값 -변경방법 1. 클래스 내에서 직접 변경 -변경방법 2. 프로젝트 생성 시 URL Ma..

코딩/JSP&Servlet 2023.06.19

[JAVA]16. JDBC

[JDBC] JDBC(JAVA Database Connectivity) Java에서 Database에 접속할 수 있도록 하는 API API(Application Interface): 프로그램과 프로그램의 상호작용을 도와주는 매개체 연결과정 [실습]회원가입, 로그인 기능 구현 [DB] DB워크시트에 회원정보 작성 -SELECT: 회원조회(로그인) -INSERT: 회원가입 -UPDATE: 회원정보 수정 -DELETE: 회원정보 삭제 DB 워크시트를 JAVA 프로젝트 내에 저장 [JAVA] 1. 회원정보 입력받기(Scanner 도구): 입력값을 id, pw, name, age 변수에 저장 2. JDBC 연결순서 1)Oracle 연결에 필요한 외부라이브러리(ojdbc6 jar) 불러오기(import) -ojdb..

코딩/JAVA 2023.06.19

[JAVA]15. 추상화&인터페이스

추상클래스의 필요성 -상속관계에서 하위클래스가 반드시 구현해야 함을 알릴 때(강제성) -설계와 구현 분리: 상위클래스에서 개념적 특징/하위클래스에서 구체적 행위 구현 2. 추상클래스 규칙 추상클래스->하위클래스에서 추상메소드를 오버라이딩해야 함 부모클래스에 생성자가 있으면 자손클래스에서도 생성자를 만들어야 한다. super(): 조상클래스의 생성자를 호출하는 데 사용된다. ->생성자의 첫 줄에 입력해야 함 [실습] 1)직원 클래스(추상클래스) 만들기 -속성: 사번, 이름, 급여 -추상메소드: getMoneyPay() -생성자(속성들의 값을 담을 메소드) 만들기 -변수에 접근할 getter, setter 메소드 만들기 2)직급별로 VO클래스 만들기(추가속성, 메소드) -직원 클래스 상속받기(생성자, 추상메..

코딩/JAVA 2023.06.16