-
JSP에는 대표적으로 request와 response 객체가 있고 데이터를 주고 받을 때 사용하는 여러가지 내장 객체들이 있다.
web.xml에 servlet을 만들고 JSP와 연결시키는 것이다.
사용자로부터 요청이 오면 servlet으로 작업을 하는데 그 servlet을 작업을 하여 init-param과 param-name param-vlaue등을 설정하여 JSP로 보내어 클라이언트에게 view하게 해준다.
config 객체
servlet가 JSP에 데이터를 하나 공유할 때 사용한다.
<servlet>
<servlet-name>servletEx</servlet-name>
<jsp-flie>jspA.jsp<jsp-file>
<init-param>
<param-name>MemberId</param-name>
<param-value>Member</param-value>
</init-param>
<init-param>
<param-name>MemberPw</param-name>
<param-value>12345</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>servletEx</servlet-name>
<url-pattern>/jspA.jsp</url-pattern>
</servlet-mapping>
JSP에서
<%!
Sting MemberId ;
String MemberPw ;
%>
<%
MemberId = getServletConfig().getInitparameter("MemberId");
MemberPw= getServletConfig().getInitParameter("MemberPw");
%>
<p>membeId: <%=memberid %></p>
<p>memberpw: <%=memberpw%></p>
로 표시하여 web.xml에서 servlet안에있는 init-param을 getInitParameter를 사용하여 받아 올 수 있다.
이 config객체를 사용하는 것은 그 해당 servlet에서만 사용할 수 있는데,
web.xml으로 JSP 전체에 보내는 방법도 있다.
application 객체
application객체는 context param로 getInitParameter()를 사용하여 전체 JSP들에 보낼 수 있다.
<context-param>
<param-name>imgSet</param-name>
<param-value>/save/img</param-value>
</context-param>
<context-param>
<param-name>numberSet</param-name>
<param-value>12345</param-value>
</context-param>
<servlet>
<servlet-name>servletEx</servlet-name>
<jsp-flie>jspA.jsp<jsp-file>
<init-param>
<param-name>MemberId</param-name>
<param-value>Member</param-value>
</init-param>
<init-param>
<param-name>MemberPw</param-name>
<param-value>12345</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>servletEx</servlet-name>
<url-pattern>/jspA.jsp</url-pattern>
</servlet-mapping>
<%!
String MemberId ;
String MemberPw ;
String imgSet;
String numberSet;
%>
<%
MemberId = getServletConfig().getInitparameter("MemberId");
MemberPw= getServletConfig().getInitParameter("MemberPw");
%>
<p>membeId: <%=memberid %></p>
<p>memberpw: <%=memberpw%></p>
<%
imgSet = application.getInitParameter("imgSet");
numberSet = application.getInitParameter("numberSet");
%>
<p>imgSet: <%= imgSet %> </p>
<p>numberSet: <%= numberSet %> </p>
로 각각 멤버변수에 추가 하고 appliacation을 객체로 해서 getInitparameter로 받아와서 값을 받고
표현식코드로 출력할 수 있다. 값을 받아오는 메서드와 표현식 코드를 번갈아서 2번 사용했다.
모든 application내에서 공유할 수 있다는 특징때문에 application객체는 setAttribute()와 getAttribute()를 사용하여 값을 다른 JSP에서 설정하고 받을 수 있다.
예를 들어보면
application.setAttribute("memberId", "Kim");
application.setAttribute("memberIP", "192.168.0.2);
라고 하나의 JSP에서 appliction으로 만들었다면
memberId= (String)application.getAttribute("memberId");
memberIP=(String)application.getAttribute("memberIP");
로 다른 JSP와 공유가 가능하다.
out 객체
out객체는 servlet의 doGet에서 봤던 out.print()처럼 out객체를 활용하여 출력할 수 있다.
exception 객체
에러 메세지를 예외 객체를 활용하여 표시하는 것이다.
하나의 JSP 페이지에서 변수를 선언만 하고 초기화하지 않았다고 가정하자.
<%@ errorPage= "errorPage.jsp%> 를 최상단부에 써서 해당 페이지에 보내도록 설정해놔야한다.
<%@ page isErrorPage="true"%> 라고 위에서 받는 JSP에 표시해야한다.
해당 JSP 페이지에서
<%
String msg= exception.getMessage();
%>
<h1> error message: <%= msg %> </h1> 으로 에러 메세지를 출력할 수 있다.
출력하면 error message : null이 나올 것이다.
'JSP&스프링 > JSP 키포인트' 카테고리의 다른 글
[JSP] DAO 와 DTO의 정의와 Servlet, DAO, DTO간의 관계 정의하기 (0) 2023.01.22 [JSP] JDBC의 정의와 실행순서 그리고 preparedStatement를 사용하는 경우 정리하기 (0) 2023.01.21 [JSP] JSP의 요청과 응답에 해당하는 내장객체 request & response 개념과 예시문 정리하기 (0) 2023.01.20 [JSP] JSP의 주요 스크립트의 종류와 예시문 정리하기 (0) 2023.01.20 [JSP] form 형태 태그의 데이터 처리 방식과 doGet(), doPost() 방식의 특징 정리하기 (0) 2023.01.19 댓글