[WEB]

[JSP] JSP 내장객체 : config / application / out / exception 객체

ddgoori 2020. 7. 4. 14:45

1. config 객체

- 서블릿이 초기화 될때 정보를 저장해서 공유할 수 있음

- 해당 서블릿에서만 공유됨

 

웹 환경설정인 web.xml에 어떠한 데이터를 저장해놓고 getInitParameter()해서 jsp에서 코드를 공유하는 것

1. web.xml에서 데이터 저장하고

2. jspEx.jsp에서 config객체를 이용해서 xml에 있는 데이터를 가져온다.

 

 

 

2. application 객체

 

- web.xml에 데이터를 저장해놓고 같은 어플리케이션 내에 있으면 어떤 servlet에도 정보 공유 가능

- 어플리케이션 전체적으로 공유가능한 데이터

- 개발할 때 real-server와 test-server를 따로 두는 경우가 많다.

- 어플리케이션 통째로 공유될 수 있음

jspEx.jsp

<%@ 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>

	<%!
	String imgDir;
	String testServerIP;
	%>
	
	<%
	imgDir = application.getInitParameter("imgDir");
	testServerIP = application.getInitParameter("testServerIP");
	%>
	
	<p> imgDir : <%=imgDir %></p>
	<p> testServer : <%= testServerIP %></p>

</body>
</html>

 

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>testProject002</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  
  
  <context-param>
  	<param-name>imgDir</param-name>
  	<param-value>/upload/img</param-value>
  </context-param>
  <context-param>
  	<param-name>testServerIP</param-name>
  	<param-value>127.0.0.1</param-value>
  </context-param>
  <context-param>
   	<param-name>realServerIP</param-name>
  	<param-value>68.0.30.1</param-value>
  </context-param>
  
</web-app>

 

getAttribute

setAttribute

 application 객체는 모든 jsp 혹은 servlet 클래스에서 공통의 데이터를 공유 가능

=> seAttribute로 선언한 것을 다른 jsp에서 getAttribute로 가져올 수 있음 (이때는 String으로 꼭 형변환해서 가져와야한다)

 

 

3. out 객체

 

-

 

 

 

4. exception 객체

jsp에서 에러가 발생했을 떄 exception처리를 해주는 것

이 페이지에서 에러가 발생하면 페이지 지시어를 통해 errorpage로 이동시킬 수 있고 이를 명시해줘야 한다.

-> errorPage.jsp에서는 isErrorPage = "true"로 명시해줘야 함

=> 에러코드임

 

 

exception.getMessage() => 어떠한 에러가 났는지 확인

 

 

*정리잘된 곳

출처: https://coffeemen.tistory.com/14

 

#9. - JSP, Servlet 데이터 공유

web.xml 파일 수정을 통해 JSP 파일과 Servlet 에서 데이터 공유가 가능합니다. 다수의 서버 IP 주소, 파일 시스템 조작을 위한 경로 지정과 같은 상황들이 있을 수 있겠죠. 이것은 고유의 내장객체이��

coffeemen.tistory.com

https://gyrfalcon.tistory.com/entry/JSP-%EB%82%B4%EC%9E%A5-%EA%B0%9D%EC%B2%B4-9%EA%B0%80%EC%A7%80-%ED%8A%B9%EC%A7%95

 

JSP 내장 객체 9가지 특징

JSP 내장 객체 1. request  : javax.servlet.ServletRequest(javax.servlet.http.httpRequest)   >> client의 http 요청정보를 저장하고 있는 객체 2. response  : javax.servlet.ServletResponse(javax.servle..

gyrfalcon.tistory.com

drive.google.com/file/d/1qp7spTxqfIt1tFbIN3HnqFTjg-Ok7jaW/view?usp=sharing

 

11강_JSP 내장객체.pdf

 

drive.google.com