BackEnd/WEB 40

📑 국비_DAY58

Servlet or JSP 페이지 이동 방법 1. Redirect 방식 (insert, update, delete명령은 무조건 redirect방식으로 응답한다.) a.jsp내에서 response.sendRedirect("b.jsp);를 입력한다. 이는 사용자의 요청 정보를 a.jsp가 받고 재요청 정보를 사용자에게 응답해주고 최종적으로 요청된(b.jsp)페이지 정보를 클라이언트 측에서 변경된 URL을 통해서 확인할 수 있다. 예를 들어 게시판을 게시글을 등록, 수정, 삭제 등의 작업을 a.jsp에 요청을 하면 전달받은 사용자의 요청정보를 통해 DB에 접근하여 수정하고 사용자에게 수정된 정보를 확인하도록 게시글 작성하기(a.jsp)에서 게시글 목록보기(b.jsp)로 재요청(redirect) 정보를 응답한다..

📑 JSTL_국비_DAY57

EL : 데이터를 화면 상에 간결하게 표현할 때 사용 JSTL : 조건이나 반복의 기술을 문법을 태그 형식으로 사용한다. 모든 값의 표현은 EL로 구현한다. (Tag형식의 명령어 라이브러리) JSTL로 반복문 사용하기 을 사용하여 JSP파일이 실행되어 서블릿으로 변환될 때, _jspService영역에 들어가도록 변수 및 자료구조를 선언한다. 변수 및 자료구조에 데이터를 넣는다. 4가지 영역(pageContext, request, session, application) 중 한 곳에 데이터를 (setAttribute)저장한다. [속성 정보] JSTL문법의 모든 값의 표현법은 반드시 EL로 사용한다고 했다. EL을 사용하기 위해서는 상수를 제외한 모든 변수는 반드시 네가지 스코프영역 중 한 곳에 값을 저장해야..

📑 EL_국비_DAY56

JSP파일은 컴파일 시 서블릿으로 변환된다고 했다. 이때 주석문을 어떤것으로 쓰느냐에 따라서 차이가 있는데 그 차이점을 살펴보자. 주석문의 차이점 : JSP파일에서 HTML주석문을 사용하면 컴파일시 변환될 때, 주석문이라서 실행이 안되지만 주석문은 넘어간다. : JSP파일에서 JSP 주석문을 사용하면 컴파일시 변환될 때, 위와는 달리 주석문 자체가 변환되어 넘어가지 않는다. 아래의 이미지를 확인하면 HTML주석문은 넘어가고, JSP주석문은 넘어가지 않은 것을 확인할 수 있다. 더보기 위의 주석문을 사용할 때 주의해야 하는 이유는 EL 표현식을 사용할 때이다. EL표현식은 말그대로 표현식인데 HTML이 아닌 JSP파일에서만 사용할 수 있는 표현식이다. 이때 EL표현식에 대한 주석문을 html로 작성하게 되..

📑 JSP_국비_DAY55

Buisness Logic : 사용자의 요청과 함께 전달된 정보를 가공및 산출하는 부분 Presentation Logic : 가공되어 산출된 정보를 디자인하여 사용자에게 표출하는 부분 Model 1 -> 비즈니스 로직과, 프레젠테이션 로직을 한 문서에 저장하는 웹 개발 패턴 Model 2 -> 비즈니스 로직은 개발자가 Servlet으로 프레젠테이션 로직은 JSP가 담당하며, 각각의 역할을 분할하여 수행한다. MVC(Model View Controller) -> 위의 두 모델의 단점을 보완하고자 등장한 디자인 패턴. 컨트롤러가 사용자의 요청을 받고, 모델과 통신하면서 모델이 가공한 데이터를 받으면 뷰에게 전달하여 뷰가 출력하면서 사용자의 요청에 응답한다. JSP(Java Server Page) ㄴ> jsp..

📑 서블릿_국비_DAY54

라이프 사이클 사용자로부터 요청이 들어온다. Tomcat이 이를 인지한다. 요청을 인식하면 컨테이너에 사용자가 요청한 url-mapping이 존재하는지 확인한다. 있으면 호출하고, 없으면 새로 만든다. 특정 서블릿에 대한 첫 요청시에는 컨테이너에 아직 로딩되지 않았다. [Tomcat이 진행] -> 서비스를 실행하는 객체를 만들어서 연결해준다. 생성(new) 초기화(init) 컨테이너 적재 별도의 스레드를 생성하여 할당한다. 이 스레드가 실질적으로 사용자의 요청에 응답한다. 사용자가 요청한 방식에 따라 분기가 일어나는데 이는 선택사항이다. 더보기 자바 (서블릿)파일은 실행되어 WEB-INF폴더 하위에 classes폴더에 생성된다. html파일은 webapp폴더 하위의 생성된다. 실행파일(war)만드는 법 ..

📑 SERVLET_국비_DAY53

[웹 프로그래밍] 서버 : 네트워크에서 서비스를 제공하는 컴퓨터로서 서비스를 제공할 수 있는 프로그램이 설치되어야 한다. 클라이언트 : 네트워크에서 서비스를 제공받는 컴퓨터로서 브라우저가 설치되어야 한다. [HTTP 프로토콜] -> 정적인 정보만 제공하는 특징이 있다. -> 동적인 정보를 제공하는 프로그래밍 필요 -> CGI www, 서비스를 제공하지 위한 통신규약이다. 웹 서비스를 제공하는 Hyper Text Transfer Protocol이다. 웹 서버와 클라이언트는 HTTP를 통해서 통신한다. [CGI(Common Gateway Interface)] 초기 웹 프로그래밍에 사용되었던 기술이다. 프로세스 단위로 실행되어서(요청에 대한 응답이 프로그램 실행) 서버 부하가 심하다. -> 나중에 스레드 단위..

📑 UML_국비_DAY52

전체 프로젝트 상에서 UML을 설계하는 것은 초급 개발자의 역량이 아닙니다. 하지만 그래도 짜여진 UML을 보고 이해는 할 수 있어야 합니다. 소프트웨어 개발 주기 SDLC 분석 사용자가 원하는 시스템의 기능은 무엇인가? (what) 사용자 관점에서 시스템의 요구사항을 수집하는 것 기능, 성능, 인터페이스 요구사항 등이 포함된다. 업무분석이라고도 한다. 사용자의 요구사항과 시스템의 기능이 문서화 산출물 : 요구사항 명세서 설계 어떻게 사용자가 원하는 기능을 제공할 것인가? (how) 요구사항 분석 단계에서 산출된 요구사항들을 설계도면에 옮기는 것 산출물 : 설계 명세서 개발(구현) 프로그래밍과 테스트 실행 개발된 시스템을 사용자들에게 교육하고, 실제 업무에 적용 유지보수 요류, 요구사항 변경 및 기능향상..

📑 JSP_국비_DAY48

Form데이터를 전송하는 방법 [로그인 과정] [방법 1] 폼 객체(forms)를 통해 폼의 정보를 얻어오는 방법 form태그가 1개인 경우에는 문제 없지만, form태그가 여러 개인 경우 병렬 처리가 어려워 불안정합니다. var f = document.forms[0]; forms는 현재 문서에 존재하는 form정보를 구하는 객체입니다. froms는 문서내의 form정보를 배열로 저장을 합니다. f.action -> 전송대상(where) form의 정보를 전송할 대상을 지정합니다. 생략시 자기 자신의 페이지를 호출합니다. f.method -> 전송방식(how) : GET방식 or POST방식 f.submit() -> 전송함수(함수호출시 괄호 주의!) -> 동작을 안하는데 에러도 내지 않음. 오류수정이 어..

📑 JSP_국비_DAY47

[디지털 시계 만들기] 태그 사이에 값을 넣는 것은 innerHTML속성을 사용합니다. input태그에 값을 적는 것은 value속성을 사용합니다. setTimeout(함수명, 호출주기) : 1회 호출 setInterval(함수명, 호출주기) : 지속적으로 호출 자바스크립트는 ms(1/1000)초 단위를 사용합니다. 더보기 [소스코드] 더보기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 7..

📑 JDBC 미니프로젝트 2일차

전체적인 기능은 사용자가 할 수 있는 기능(UserDao)과 관리자가 수행하는 기능(AdminDao)으로 구분했습니다. UserDao(Select) 조회기능(Select) selectReserve(reserveJumin) -> 사용자가 입력한 주민번호와 동일한 주민번호가 저장된 예약정보를 불러온다. 주민번호의 입력형식을 정규식으로 검사합니다. 주민번호가 예약리스트에 존재한다면 예약 정보를 보여주고, 아니면 다시 입력하도록 합니다. rooms_userOnly_view사용 selectUserList() -> 사용자가 선택할 수 있도록 현재 예약되지 않은 객실 리스트를 조회한다. rooms_user_view 사용 AdminDao(Select, Insert, Update, Delete) 조회기능 selectAd..

📑 JSP_국비_DAY46

자바스크립트의 개요 기본적인 개념만 정리하고 마지막에 실습 코드를 주석과 함께 첨부할테니 참고해서 이해하시길 바랍니다. html 문서 자체를 관리하는 객체를 document객체라고 합니다. 자바스크립트는 head영역의 script태그에서 사용할 수 있고, body영역에 input태그의 버튼에서도 사용할 수 있습니다. [스크립트 태그] [body영역에 input태그] 자바스크립트의 자료형 자료형 설명 Number 정수와 실수를 구분하지 않습니다. String 문자열("")과 문자('')를 구분하지 않습니다. Date 날짜 데이터를 저장합니다. Boolean 논리형 데이터를 저장합니다. 자바스크립트의 변수 선언 방법 var a; 예약어 var을 사용합니다. let b; 예약어 let을 사용합니다. c = a..

📑 국비_DAY45

JSP를 사용하여 레이아웃 구성하기 큰틀만 만들어 두고, 그 틀에 해당하는 내용은 문서화시킨다. header, aside, content, footer등 레이아웃의 구성요소를 폴더에 문서화하여 사용하면 추후에 유지보수가 용이합니다. 이와 같은 형식으로 문서를 불러온다. html에서는 불가능하고, jsp에서만 지원한다. main_company.jsp -> 전체 레이아웃의 큰 틀 잡기 header.jsp -> 폴더화해서 include로 main_menu폴더내 header영역에 포함시킨다. menu.jsp -> header영역에 표현되므로, 파일을 폴더화해서 include로 header파일에 포함시킨다. 이렇게 영역별로 문서화시켜서 분리하고, include 명령으로 하나의 파일에 문서자체를 포함시키면 원본 파..