🔻session 객체 클라이언트와 서버 간의 상태를 유지하기 위한 메커니즘으로, 서블릿과 JSP에서 사용된다. 이 객체를 사용하면 클라이언트의 요청 간에 데이터를 공유하거나 유지할 수 있다. 이를 통해 로그인 상태 유지, 장바구니 정보 저장 등 다양한 기능을 구현할 수 있다. getId() 현재 세션의 고유 식별자인 세션 ID를 반환한다. session.getId() getCreationTime() 세션이 생성된 시간을 반환한다. 반환값은 1970년 1월 1일부터 경과한 시간을 밀리초 단위로 나타낸다. session.getCreationTime() getMaxInactiveInterval() 세션이 얼마 동안 유효한지를 초 단위로 반환한다. 이 기간이 지나면 서버는 세션을 만료시킨다. session.ge..
request, pageContext, session, application 은 객체 내부에 사용자(개발자) 데이터를 저장할 수 있는 컬렉션을 가지고 있다. 내부에 데이터를 저장하는 공간이 Map형태로 존재하며, 데이터에 접근할 때 setAttribute(), getAttribute()로 접근한다. 🔻response 객체 HttpServletResponse 서블릿 컨테이너가 클라이언트의 HTTP 요청에 대한 정보를 담고 있는 객체이다. response 객체의 역할 1. 서버에서 클라이언트로 돌려주는 HTML 페이지 제작 getWriter() 메서드는 PrintWriter 객체를 반환하여 문자 데이터를 클라이언트로 보낼 수 있다. 2. 서버에서 클라이언트로 돌려주는 HTML 페이지 인코딩 response...
HttpServletRequest 인터페이스는 서블릿에서 클라이언트로부터의 HTTP 요청에 대한 정보를 제공한다. 🔻클라이언트에서 서버로 전송할 때의 여러가지 관련 정보 가져오기 getRequestURI() 클라이언트가 요청한 URI(Uniform Resource Identifier)를 반환한다. 예를 들어, http://www.example.com/contextPath/servletPath/extraPath에서 /contextPath/servletPath/extraPath 부분을 반환한다. getServerName() 현재 서버의 호스트명을 반환한다. 예를 들어, http://www.example.com에서 http://www.example.com 부분을 반환한다. getMethod() 클라이언트가 요..
🔻JSP 내장 객체, JSP Implicit Object 개발자가 직접 생성하지 않아도 JSP(톰캣)이 미리 만들어서 제공하는 객체이다. 예약어로 제공한다. request, response, session, pageContext, out, application, config, page, exception 등이 있다. request, pageContext, session, application 은 객체 내부에 사용자(개발자) 데이터를 저장할 수 있는 컬렉션을 가지고 있다. Map void setAttribute(String key, Object value) Object getAttribute(String key) 🔻request 객체 HttpServletRequest 를 의미한다. 클라이언트의 요청정보를 ..
템플릿 작성 기본으로 사용할 뼈대를 작성 후 복사한다. window - Preferences template Web - JSP Files - Editor - Templates New를 눌러 추가한다. New Template Name : 구분할 이름 Patteren : 복사한 템플릿 붙여넣기 Context : New JSP 설정 위 내용을 작성 후 Ok를 누르면 템플릿 등록이 완료된 것이다. 적용하기 새 JSP 파일만들기 기존대로 파일명 입력 후 Next를 클릭한다. 새로 등록한 템플릿을 선택 후 Finish를 눌러 파일을 생성한다. 템플릿 적용은 한번만 진행하며, 추후 JSP 파일을 만들 때 이 템플릿으로 생성된다.
JSP 구성요소 1. JSP 지시자, JSP Directive JSP 문서의 수행을 위한 정보를 전달한다. 1) page 지시자 현재 JSP 문서에 대한 속성을 지정한다. JSP 페이지의 항상 첫번째 라인에 위치한다. 1개 이상 작성이 가능하다. JSP의 실행환경(JSP 컨테이너)인 톰캣에게 현재 페이지의 정보를 알려준다. a. language="java" JSP 페이지에서 사용할 서버 프로그래밍 언어를 java로 지정 b. contentType="text/html; charset=UTF-8" JSP 페이지 내용물에 대한 기술한다. text/html를 MIME Type이라고 한다. 현재 파일의 내용물이 HTML 문서라는 정보를 브라우저에게 제공한다. charset=UTF-8 : HTML 문서를 인코딩하여..
servlet 은 자바(*.java) 베이스로 이뤄져있다. 자바 그대로 사용할 수 있는 장점이 있는 반면, 클라이언트 코드를 작성하기 불편한 단점이 있다. JSP는 HTML 페이지 (*.jsp) 가 베이스이다. HTML 기반으로 이뤄져 클라이언트 코드를 작성하기 쉽다. 하지만 자바 코드를 작성하기 불편한 단점이 있다. Servlet에서 JSP로 넘어간건 개발 편의성때문이다. JSP로 작업해보면서 개발 편의성을 직접 느껴본다. 🔻동적 웹 페이지 생성 File - New - Dynamic Web Project 프로젝트 명(JSPTest) 입력 후 > Next > Next Context root : "jsp"으로 수정한다. Context root 표기하는 것이 본인의 취향인데 선생님처러 소문자로만 작성해본다...
웹페이지를 다룰 때 데이터를 입력 및 전송하여 데이터를 수신하는 작업을 많이 한다. 1. 데이터 입력 + 전송하는 페이지 2. 데이터 수신하는 결과 페이지 위 두 페이지로 데이터 입력 및 전송, 수신하는 페이지를 만들어본다. Ex02_Send.java : 입력 + 전송 Ex02_Receive.java : 수신 + 처리 🔻데이터 송수신 페이지 작성 temp.html 데이터 수신 데이터 처리가 완료되었습니다. doGet(), doPost()에 넣을 html을 html파일을 따로 만들어 작성하고 복사하여 붙여넣는 것이 편하다. Ex02_Send.java 사용자에게 데이터를 입력받고 Ex02_Receive.java로 전송한다. package com.test.servlet; import java.io.IOExce..
🔻정적 페이지 작동 원리 1. URL 입력: 사용자가 웹 브라우저에 주소창에 웹 페이지의 URL을 입력한다. 2. 요청: 클라이언트의 브라우저가 입력한 URL을 기반으로 해당 서버로 HTTP 요청을 보낸다. 3. 검색: 클라이언트가 요청한 URL의 도메인 이름을 DNS(Domain Name System)을 사용하여 해당 IP 주소로 변환한다. 이후 해당 IP 주소의 서버를 찾아 연결을 시도힌다. 4. 확장자 탐색: 서버는 클라이언트의 요청을 받고, 해당 요청이 정적 페이지인지 확인하기 위해 확장자를 검사한다. 예를 들어, .html, .css, .js 등의 확장자는 정적 페이지를 의미한다. 5. 소스 읽기: 요청된 파일(HTML, CSS, JavaScript 등)이 서버에 존재하면, 서버는 해당 파일의 ..