Servlet은 JAVA언어를 이용하여 문서를 작성하고, 출력객체( PrintWriter )를 이용하여 HTML 코드를 삽입하지만,
JSP는 Servlet과 반대로 HTML 코드에 JAVA언어를 삽입하여 동적 문서를 작성 할 수 있습니다.
HTML 코드안에 JAVA코드를 삽입하기 위해서는 JSP태그를 이용해야 합니다.
즉, 전체적인 속성을 지정할 때 사용한다.
<%@ page %> : 해당 페이지의 전체적인 속성 지정. 주로 사용되는 언어 지정 및 import 문을 많이 사용.
<%@ include %> : 별도의 페이지를 현재 페이지에 삽입.
<%@ taglib %> : 태그라이브러리의 태그 사용. ( ... JSTL 등 사용 );
* 태그라이브러리? 사용자가 만든 tag들을 말한다. taglib지시자를 사용한다.
url 및 prefix 속성이 있다.
- url : 태그라이브러리의 위치 값
- prefix : 태그를 가르키는 이름 값
1 2 3 | <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <%@page import="java.util.Date"%> | cs |
* 별도의 페이지를 삽입 ( 페이지 반복성이 있을 때 활용가능 )
1 | <%@ include file="MemberList.jsp" %> | cs |
1 | <!-- 클라이언트가 브라우저상에서는 확인 불가능합니다. --> | cs |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <%! String nickName = "ChrisMare"; String nick1 = "Chris"; String nick2 = "Mare"; %> <%! public String sum_Nick(String n1, String n2){ return n1 + n2; } %> <% out.println(nickName + "</br>"); out.println(sum_Nick(nick1, nick2) + "</br>"); %> | cs |
* ' ; ' 를 사용할 수 없다.
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 | <%@page import="java.io.PrintWriter"%> <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!DOCTYPE html> <html> <head> <meta charset="EUC-KR"> <title>Insert title here</title> </head> <body> <% //JAVA 코드 String str = "Chrismare"; for(int i=0;i<str.length();i++){ %> <hr> <!-- html 코드 --> <% out.println(str.charAt(i)); } %> <% out.println(str); %> </body> </html> | cs |
1 | <jsp:forward page="nextPage.jsp"/> | cs |
1 2 3 | <h1>main.jsp 페이지</h1> <jsp:include page="sub.jsp" flush="true"/> <h1>다시 main.jsp 페이지</h1> | cs |
현재페이지에서 설정 페이지로 갔다가 다시 현재페이지로 넘어오는 형태이다.
param
사용법)
1 2 3 | <jsp:forward page="보내는 "> <jsp:param value="" name=""/> </jsp:forward> | cs |
ex)
forward_param.jsp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!DOCTYPE html> <html> <head> <meta charset="EUC-KR"> <title>forward_param.jsp</title> </head> <body> <%! String id, pw; %> <% id = request.getParameter("id"); pw = request.getParameter("pw"); %> <h1>forward_param.jsp 페이지 입니다.</h1> 아이디 : <%= id %></br> 비밀번호 : <%= pw %></br> </body> </html> | cs |
main.jsp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <%@page import="java.util.Arrays"%> <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!DOCTYPE html> <html> <head> <meta charset="EUC-KR"> <title>main.jsp</title> </head> <body> <h1>main.jsp 페이지 입니다.</h1> <jsp:forward page="forward_param.jsp"> <jsp:param value="ChrisMare" name="id"/> <jsp:param value="1234" name="pw"/> </jsp:forward> </body> </html> | cs |
결과)
요약
request/response 객체 (0) | 2018.10.18 |
---|---|
JSP 동작 원리 (0) | 2018.10.18 |
웹어플리케이션의 생명주기 감시(ServletContextListener) (0) | 2018.10.17 |
Servlet 데이터 공유 (ServletContext) (0) | 2018.10.17 |
Servlet 초기화 Parameter (0) | 2018.10.17 |
댓글 영역