티스토리 뷰
JSP 구성 요소는 크게 템플릿 데이터와 JSP 전용 태그, JSP 내장 객체가 있다.
①템플릿 텍스트
- 클라이언트로 출력되는 콘텐츠. 템플릿 텍스트는 서블릿 코드를 생성할 때 출력문(tomcat이면 out.println으로 변환)
즉, HTML, 자바스크립트, 스타일 시트, JSON, XML, 일반 텍스트 등이 해당된다.
②JSP 전용태그
- 서블릿 생성 시 특정 JAVA 코드로 바뀌는 태그.
Directives(<%@ ・・・ $>),
스크립트릿(<% ・・・ %>),
표현식(<%= ・・・ %>), ※이 안에는 세미콜론(;)을 사용하지 않음
선언(<%! ・・・ %>),
JSP Action()<jsp: ・・・ >이 있다.
JSP 전용 태그
①지시어
<%@ 지시어 속성1 ="값1" 속성2 ="값2" ・・・%>
page, taglib, include가 있다.
1)page - page 지시어는 JSP 페이지와 관련된 속성을 정의할 때 사용ex)
<%@ page contentType ="text/html"; charset="UTF-8"%>
- contentType : jsp 페이지로부터 생성되는 응답 문서의 MIME 타입과 인코딩 문자를 설정
- autoFlush : 자동으로 버퍼를 비워 내용을 클라이언트에 보낼 것인지에 대한 설정
- import : JDK에서 제공하는 클래스를 사용할 때 사용할 클래스를 명시 default : 8dk
- buffer : JSP 페이지의 출력 버퍼 크기를 설정 ※버퍼를 사용하지 않으면 <jsp:forward> 기능은 사용 불가능.
+) <jsp:forward> : 페이지의 실행이 종료되고 새로운 페이지로의 이동이 일어난다.
2) taglib - 태그 라이브러리를 선언할 때 사용
<%@ taglib uri="http://java.sum.com/jsp/jstl/core" prefix="c" %>
③JSP 내장 객체
- JSP 기술 사양서에 정의된 필수적인 9개의 객체
request, response, pageContext, session, application, config, out, page, exception
→ JSP에서 별도의 선언 없이도 사용이 가능하다.
<jsp:include> 액션태그와 include 지시어의 차이점
①<jsp:include> 액션 태그 // 해당 페이지에서만 변수값을 유지한 후 불러들인 페이지의 값은 반영하지 않음
ex) 아래의 결과는
including.jsp : 20
included.jsp : 1000
including : 20이 된다. // 불러들인 페이지에서 included.jsp 파일의 변수값은 including.jsp파일에 반영안됨
-including.jsp 파일
<%@page contentType = "text/html; charset=euc-kr" %>
<HTML>
<BODY>
<% int data = 20; %>
including.jsp : <%= data %><br>
<jsp:include page = "included.jsp"/>
including.jsp : <%= data %>
</BODY>
</HTML>
-included.jsp 파일
<% data = 1000; %>
included.jsp : <%= data %>
②<%@ include file = "test.jsp" %> // 불러들인 페이지의 변수값을 반영시킴
ex) 아래의 결과는
including.jsp : 20
included.jsp : 1000
including.jsp : 1000이 된다.
-including.jsp 파일
<%@page contentType = "text/html; charset=euc-kr" %>
<HTML>
<BODY>
<% int data = 20; %>
including.jsp : <%= data %><br>
<%@ include file = "included.jsp" %>
including.jsp : <%= data %>
</BODY>
</HTML>
-included.jsp 파일
<% data = 1000; %>
included.jsp : <%= data %>
요청과 응답
쿠키
- 쿠키의 유효시간 : 클라리언트 컴퓨터에서 쿠키가 유지되는 시간. 유효시간이 지나면 자동 삭제.
- 쿠키 생성 후 Cookie 클래스의 SetMaxAge()를 사용하여 지정. default = -1 : 브라우저 종료시 삭제. 0 : 기존 쿠키 삭제
-서버측 JSP페이지에서 쿠키를 만들어 응답 메시지의 헤더에 추가하는 코드
<% Cookie cookie = new Cookin("name", "value");
response.addCookie(cookie)%>
세션
- 세션의 유효시간 : 클라이언트가 서버에 추가요청을 하지 않고도 세션을 유지시킬 수 있는 최대시간
- 설정방법1) web.xml 파일에서 <session-config>의 <session-time-out>으로 설정 가능 (분 단위)
- 설정방법2) setMaxInactioveInterval(int interval)을 사용(ㅊㅎ 던유ㅏ)
RequestDispatcher
: 서버의 리소스(서블릿이나 JSP페이지)를 포장하고 있는 유형으로
클라이언트의 요청을 해당 리소스로 포워딩 시키거나 해당 리소스의 실행 결과를 인클루드할 때 사용되는 유형.
표현언어
- 스크립트 요소(스크립트릿, 표현식, 선언부) 밖에서 사용.
- 기본 사용 형식은 {$ 수식}이다.
- 표현 언어를 사용하면 JSP 페이지에서 스크립의 사용을 줄일 수 잇다.
getParameter()와 getAttribute()차이점
- getParameter() : String타입을 리턴. 사용자가 보낸 파라미터를 읽음.
- getAttribute() : 서블릿에서 저장했던 속성을 읽음. Object 타입을 리턴하기 때문에 주로 빈 객체나 다른 클래스를 받아올때 사용된다.
MVC브라우저 -> Controller : 서블릿 -> Model: 자바빈 -> DB ->View: JSP -> 브라우저
- Total
- Today
- Yesterday
- in/out/ref 공통점
- Oracle
- EXCEPTION절
- rollback
- TrimEnd
- grant
- PL/SQL 실행문
- 초기화파라미터파일
- DECLARE절
- USER_SYS_PRIVS
- PL/SQL 예외처리문
- in/out/ref 예제
- 유틸리티에러
- DBA_SYS_PRIVS
- VB.Net
- 시간차이
- in/out/ref
- BEGIN절
- 후나빙
- REVOKE
- pl/sql
- 참조전달
- vba
- commit
- 동기통신
- C#
- NLog
- in/out/ref 차이점
- 에러
- 유틸리티
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |