안녕하세요 DBN블로그입니다.
오늘은 자바스크립트 중간고사에 대비하여 용어를 정리했습니다.
중간고사를 준비하며 정리해 둔 것이라 시험에 큰 도움이 될 것이라 생각합니다.
참고하셔서 공부하시고 꼭! 중간고사 만점 맞으세요
- JSP 개념과 동작 원리
JSP : 자바 서버 페이지. HTML 내에 자바 코드를 삽입하여 웹 서버에서 동적으로 웹 페이지를 생성해 웹 브라우저에 돌려주는 언어이다.
동작 원리
➀ 사용자의 브라우저에서 http://servername..../***.jsp 의 형태로 요청한다.
➁ 웹 서버는 ***.jsp 의 형태로 온 요청에 대해 JSP 컨테이너로 처리하게끔 요청 정보를 넘긴다.
➂ 해당 JSP 파일이 처음 요청된 것이라면 JSP 파일을 파싱한다.
➃ JSP 파일로부터 서블릿이라는 새로운 자바 파일을 생성한다.
➄ 서블릿 파일을 실행 가능한 상태인 클래스 파일로 컴파일 한다.
➅ 클래스 파일이 메모리에 적재되어 실행된다.
➆ 클래스 파일의 실행결과가 다시 웹 서버에 넘겨지고 웹 서버에서 HTML의 형태로 사용자에게 응답 내용을 전송한다.
➇ 웹 서버로부터 받은 HTML로 구성된 페이지를 브라우저에서 실행시켜서 웹 페이지가 보이게 된다.
- 서블릿
서블릿 : 동적 웹 어플리케이션 컴포넌트
java 확장자를 가짐
- 매핑
web.xml 방법
<servlet-name>
: 임의의 서블릿 이름
<servlet-class>
: 매핑할 클래스 파일명을 패키지명을 포함하여 정확하게 입력
<url-pattern>
: servlet-class의 클래스를 매핑할 임의의 이름을 입력. “/”로 시작
어노테이션 방법
@WebServlet(“/맵핑명”) : 맵핑명을 JAVA소스에 직접 입력. 단, web.xml 방법의 코드는 주석 처리.
- HTML form
input 태그의 3가지 속성 : type(필수, 종류지정), name(필수, 파라미터), value(선택, 사용자 지정 설정값이며 문자열로 처리)
메소드 처리 방식
get : 기본적인 처리 방법. 요청 파라미터(매개변수) 값이 웹 브라우저 URL에 명시되어 웹 서버로 전송. 서블릿에서는 doGet 방식으로 처리. 파라미터 길이에 제한이 있고 파라미터 값이 URL에 보이기 때문에 보안에 취약.
post : 요청 파라미터 값이 URL이 아닌 요청하는 본체에 포함되어 전송되기 때문에 웹 브라우저 URL에서 확인이 불가능. 서블릿에서는 doPost 방식으로 처리. 파라미터가 전송되면 서블릿 맵핑명만 표시되어 전송.
- JSP 스크립트 요소
선언문 : <%! %> 멤버변수, 메소드를 선언
스크립트릿 : <% %> 지역변수 선언, 메소드 선언 불가능(자체가 메소드와 같은 개념)
표현식 : <%= %> 변수를 출력하거나 메소드의 결과 값을 브라우저에 출력.(세미콜론을 붙이지 않음)
주석 : HTML <!-- 주석 -->
JSP <%-- 주석 --%>
스크립트 요소(자바)
<% /* 주석 */ %>
<% // 한줄 주석 %>
- 지시자와 태그
지시자 : 클라이언트의 요청에 JSP 페이지가 실행이 될 때 필요한 정보를 JSP 컨테이너에게 알린다.
page : JSP 페이지에 지원되는 속성들을 정의 (<%@page 속성=“값”%>)
* info, language, contentType, extends, import(유일하게 중복가능), pageEncoding 등이 있다.
include : 공통적인 내용을 매번 입력하지 않고 별도의 파일을 저장해 뒀다가 JSP 파일에 삽입, 포함시키는 것. (<%@include file="***.jsp"%>
taglib.
액션 태그 : 어떤 동작 또는 액션이 일어나는 시점에 페이지와 페이지 사이 제어를 이동시킬 수 있고 브라우저에서 자바 애플릿을 실행시킬 수 있다.
include : 다른 페이지를 현재 페이지에 포함시킴
(<jsp:include page="***.jsp"/>)
forward : 다른 페이지로 이동. 제어권이 완전히 넘어간다.
plug-in
useBean
setProperty
getProperty
- 내부 객체
JSP 페이지를 작성할 때 JSP 컨테이너가 제공하는 특별한 객체(변수). 총 9개가 있다.
request : 사용자의 요청에 대한 정보 처리. 파라미터에 포함한 요청
response : 요청에 대한 응답
out : 페이지 내용을 출력
session : 세션 정보
application : 어플리케이션 Context의 모든 페이지가 공유할 데이터를 담고 있음
pageContext : 페이지 실행에 필요한 Context 정보를 담고 있음.
page : JSP 페이지 서블릿
config : JSP 페이지 서블릿 설정 데이터 초기화 정보 객체
exception : 예외 처리
- 쿠키
웹 브라우저에서 서버에 데이터를 요청하면 서버 측 로직을 수행 후에 데이터를 웹 브라우저에 응답한 뒤 종료됨. 이렇게 연결이 끊어졌을 때도 어떤 정보를 지속적으로 유지하기 위한 수단으로 사용됨. 클라이언트에 정보를 저장.
쿠키 생성 과정
➀ 쿠키 객체를 생성함 (클래스 형태)
Cookie c = new Cookie(String, String);
➁ 쿠키에 속성 값을 설정해 줌 (쿠키의 이름과 값. Cookie(name, value)
c.setValue(String);
➂ response 객체에 addCookie() 메소드를 호출하여 쿠키를 추가함. (클라이언트에 생성된 쿠키를 전송)
response.addCookie(c);
- 세션
클라이언트마다 각기 다른 정보를 서버에 저장.
관련 메소드
getAttribute(String name) : 세션에서 데이터를 얻음.
setAttribute(String name) : 세션에 데이터를 저장
getAttributeNames() : 세션에 저장되어 있는 모든 데이터의 이름(키값)을 얻음.
invalidate() : 세션의 모든 데이터 삭제.
댓글