개발자 수업/JSP
-
28. WebSocket개발자 수업/JSP 2022. 2. 3. 16:55
1. 소켓 (Socket) 1) 네트워크에서 동작하는 프로그램의 종착점(endpoint) 2) ip 주소와 port 번호로 이루어짐 3) 서버와 클라이언트가 양방향 통신할 수 있게 해주는 소프트웨어 장치 - 둘 다 소켓을 생성하여 연결해줘야함 2. 소켓 통신 절차 1) 서버에서 서버용 소켓(ServerSocket)을 생성, 클라이언트의 접속 대기함 2) 클라이언트가 소켓(Socket) 생성하여 서버로 연결 요청함 3) 서버가 접속을 허가(accept)함 4) 서버와 클라이언트는 각각 통신을 위한 I/O 스트림 생성함 5) 스트림을 통해 서버와 클라이언트가 통신함(write, read) 6) 클라이언트가 모든 작업을 마친 후 소켓 종료(close)함 7) 서버는 새로운 클라이언트 접속을 위해 대기(acce..
-
27. Model2 방식 - 게시판개발자 수업/JSP 2021. 12. 22. 23:24
1. 답변형 게시판 테이블 (t_board) 컬럼이름 속성 자료형 크기 Null 여부 Key 기본값 1) articleNo 글 번호 number 10 N PK parentNo 부모 글 번호 number 10 N 0 title 글 제목 varchar2 100 N content 글 내용 varchar2 4000 Y imageFileName 이미지 파일 이름 varchar2 100 Y writeDate 작성일 date N sysdate id 작성자 ID varchar2 20 N FK 2. 단위 기능 (논리적인 기능) 1) 예 - 게시판 글 조회시 해당 글을 조화하는 기능과 조회수를 갱신하는 기능 - 쇼핑몰에서 상품 주문시 주문 상품을 테이블에 등록 후 주문자의 포인트 갱신하는 기능 - 은행에서 송금시 송금자의..
-
26. Model2 방식 - 회원개발자 수업/JSP 2021. 12. 22. 16:28
1. 회원 관련 추가 기능 1) 커맨드(Command) 패턴 - 브라우저가 URL 패턴을 이용해 Controller에게 수행 작업을 request하는 방법 - getPathInfo() 이용해 요청명을 받아와 작업을 수행 2) http://localhost:8080/chap20_model2/member/listMembers.do http://localhost:8080/chap20_model2/member/editMembers.do http://localhost:8080/chap20_model2/member/updateMembers.do 2. 회원 등록 3. 회원 정보 수정 1) 회원 정보 수정창에서 회원 정보를 수정하고 수정하기를 클릭해 /member/modMember.do로 Controller에 요청 2..
-
25. Model2 방식개발자 수업/JSP 2021. 12. 21. 17:08
1. Web Application Model1 1) 표준화된 소스 구조 2) 모델1, 모델2가 있음 2. 모델1 방식 1) 모든 클라이언트의 요청과 비즈니스 로직 처리를 JSP가 담당하는 구조 2) 기능 구현이 쉽고 편리하지만 유지보수가 어려움 3. 모델2 방식 1) 각 기능을 분리해서 구현 - 클라이언트의 요청 처리 및 흐름 제어 담당 (Controller) -> 서블릿 - 응답 처리 (화면기능) (View) -> JSP - 비즈니스 로직 처리 (Model) -> DAO 2) 각각의 기능을 모듈화해서 개발 -> 재사용 높음 3) 유지보수가 쉬움 4) 퍼블리셔와 개발자 작업 분업화 5) 모델2 방식과 관련된 기능, 개념에 대한 이해가 필요 4. MVC 디자인 패턴 1) Model-View-Controll..
-
24. jQuery Ajax개발자 수업/JSP 2021. 12. 20. 17:10
1. Ajax 정의 1) Asynchronus Javascript(비동기 자바스크립트) + XML의 의미 2) 자바스크립트를 사용한 비동기 통신, 즉 클라이언트와 서버 간의 XML이나 JSON 데이터를 주고받는 기술 - 기존 웹 페이지 동작 - 요청 페이지 ---> 웹 서버 요청 받음 요청 처리 결과 페이지 웹 서버 요청 받음 요청 처리 package kr.co.ezenac.ajax02; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; i..
-
23. 파일 업로드 다운로드개발자 수업/JSP 2021. 12. 16. 16:35
1. 라이브러리 추가하기 1) Apache Commons FileUpload, Apache Commons IO 2) com.oreilly.servlet 라이브러리 2. JSP에서 파일 업로드 1) 파일 업로드 관련 API - DiskFileItemFactory - setRepository() : 파일을 저장할 디렉토리 설정함 - setSizeThreadhold() : 최대 업로드 가능 파일 크기 설정함 - ServletFileUpload - parseRequest() : 전송된 매개변수를 List객체로 얻음 - getItemIterator() : 전송된 매개변수를 Iterator 타입으로 얻음 3. 순서 1) 라이브러리 추가 2) 파일 업로드 - 화면 폼 작성 - 데이터베이스 테이블, 시퀀스 생성 - D..
-
22. JSTL개발자 수업/JSP 2021. 12. 15. 00:43
1. 커스텀 태그 (Custom Tag) 1) 액션 태그나 표현 언어를 사용하더라도 조건식이나 반복문 등의 자바 코드를 제거하기 위해 도입된 기능 2. 커스텀 태그 종류 1) JSTL(JSP Standard Tag Library) - 라이브러리 따로 설치해서 사용함 2) 개발자가 만든 커스텀 태그 - 스프링 프레임워크에서 미리 만들어서 제공 3. 표준 태그 라이브러리 1) 가장 많이 사용되는 태그를 표준화하여 라이브러리로 제공 - Core 태그 : 변수 선언, 조건문/반복문, URL 처리 - Formatting 태그 : 숫자, 날짜, 시간 포맷 지정 - XML 태그 : XML 파싱 - Function 태그 : 컬렉션 처리, 문자열 처리 - SQL 태그 : DB 연결 및 쿼리 실행 4. Core 태그 라이..
-
21. 표현 언어(EL)개발자 수업/JSP 2021. 12. 15. 00:40
1. 표현 언어(Expression Language) 1) 변수의 값을 출력할 때 사용하는 스크립트 언어. 데이터 출력 기능 2) 표현식 () --> ${표현식 or 값} 3) 자바 코드가 들어가는 표현식을 좀 더 편리하게 사용하기 위함 2. EL 특징 1) 변수, 연산자 포함할 수 있음 - 자료형 : 불린, 정수, 실수, 문자열, 널(null) - 할당 연산자 - 산술 연산자 / or div % or mod - 비교 연산자 == or eq != or ne or gt = or ge - 논리 연산자 - empty 연산자 2) JSP 내장 객체에 저장된 속성 및 자바빈 속성도 EL 출력 가능 3) 내장 객체도 제공됨 3. EL의 내장 객체 1) 4가지 영역(scope)에 속성 값 저장, 읽어오기 - 스코프 ..