728x90
반응형
이름 | 형태 | 설명 |
지시자 | <%@ %> | page, include, taglib 3가지 종류가 있으며, 페이지 전반에 걸친 설정을 작성한다. - page: 해당페이지의 전체적인 속성지정 - include: 별도의 페이지를 현재 페이지에 삽입 - taglib: 태그라이브러리의 태그사용 |
선언부 | <%! %> | 자바 클래스의 멤버필드 및 멤버 베서드에 해당하는 요소를 선언하는 부분 |
스크립틀릿(scriptlet) | <% > | 메인함수(실제로는 service() )에 해당하는 코드를 작성하는 영역 |
표현식 | <%= > | 자바의 값을 html문서 사이에 출력할 때 사용한다. |
jsp주석 | <%-- --%> | 브라우저에서 확인 할수 없는 주석을 작성할 수 있다. |
** html주석 => ' <!-- ' 브라우저에서 소스보기 메뉴로 확인할 수 있다.
< jsp 작동원리 >
- 클라이언트가 웹브라우저로 file.jsp를 요청
- jsp컨데이너가 jsp파일을 servlet파일(.java) 로 변환
- 그리고 Servlet파일은 컴파일 된 후 클래스 파일(.class)로변환
- 요청한 클라이언트에 html파일 형태로 응답
<jsp 내부객체>
따로 선언하지 않아도 바로 사용할 수 있는 객체가 내부객체
- 입출력 객체 : request , response, out
- 서블릿 객체: page, config
- 세션 객체: session
- 예외 객체: exception
예시)
<%@ page import="java.util.Random" %>
<%=n1 %> -> n1값이 출력된다.
< 내장객체 : request >
- jsp기본 내장객체 중 request객체는 jsp 페이지에서 가장 많이 사용되는 객체로서 웹브라우저와 같은 클라이언트로부터의 요청 정보를 담아 제공하는 객체
- request객체는 javax.servlet.http.HttpServletRequest객체이며 JSP가 서블릿으로 변환되었을때 요청을 처리하기 위한 메서드인 jspSErvice()메서드의 첫번째 파라미터로 넘어오게 된다. 따로 선언하지 않아도 기본적으로 사용가능합니다,.
- 선언부에서는 참조할 수 없다.
- Request 객체 관련 메소드
- getContextPath() : 웹 어플리케이션의 컨텍스트 패스를 얻음
- getMethod() : get 방식과 post 방식을 구분할 수 있다
- getSession : 세션 객체를 얻는다
- getProtocol() : 해당 프로토콜을 얻는다
- getRequestURL() : 요청 URL을 얻는다
- getRequestURI() : 요청 URI를 얻는다
- getQueryString() : 쿼리스트링을 얻는다
- attribute 개발자가 필요에 의해 첨부된 별도의 객체모음
- String setAttribute(String name, Object o) : request 객체에 name이름의 object객체를 첨부함
- Object getAttribute(String name) : request 객체에 첨부된 name 이름값을 가져옴
- Enumeration<String> getAttributeNames() : request객체에 첨부된 모든 name이름을 가져옴
- void removeAttribute(String name) : request객체에 첨부된 name이름의 객체를 제거함
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%@ page import="java.io.PrintWriter"%>
<%
String requestURL = request.getRequestURL().toString();
String serverName = request.getServerName();
String serverIP = request.getLocalAddr();
String clientIP = request.getRemoteAddr();
response.setCharacterEncoding("UTF-8");
PrintWriter pw = response.getWriter();
pw.append("<h3>write in scriptlet !!</h3>");
response.setStatus(200);
%>
<h3>요청받은 주소 : <%=requestURL %></h3>
<h3>서버의 이름 : <%=serverName %></h3>
<h3>서버의 IP : <%=serverIP %></h3>
<h3>클라이언트의 IP : <%=clientIP %></h3>
<부가적 정보요청>
- String getRequestURL() : 요청한 URL전체의 값을 가져옴
- String getRequestURI() : 서비스 포트 뒤의 주소를 가져옴
- String getProtocol() : 사용중인 프로토콜 정보를 가져옴
- String getQueryString() : 쿼리 스트링 값을 가져옴
- String getMEthod() : 요청방식(GET,POST등)을 리턴
- String getRemoteAddr() : 요청 클라이언트의 IP주소 리턴
Parameter 메소드
- getParameter(String name) : name 에 해당하는 파라미터 값을 구함 -> 리턴값 string
- getParameterNames() : 모든 파라미터 이름을 구함 -> 리턴값 java.util.Enumeration
- getParameterValues(String name) : name에 해당하는 파라미터값들을 구함 - > 리턴값 String[]
<내장객체 : response>
- 웹브라우저의 요청에 응답하는 것을 말함
- 응답의 정보를 가지고 있는 객체를 말한다
- Response관련 메서드
- getCharacterEncoding() : 응답할 때 문자의 인코딩을 구함
- addCookie(Cookie) : 쿠키를 지정함
- sendRedirect(URL) : 지정한 URL로 이동함, 특정상황에 조건에 따라 원하는 페이지로 이동하게 된다.
728x90
반응형
'Java&Spring' 카테고리의 다른 글
JSP_day02[ QueryString 활용 ] (0) | 2022.07.19 |
---|---|
Java_[Method_ 메서드3] (0) | 2022.07.11 |
Java_[Method 메서드02] (0) | 2022.07.11 |
댓글