728x90
request 객체와 동일한 기능을 하는 requestScope를 사용하는 예제
1. memberForm.jsp 파일 작성
<%-- memberForm.jsp --%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>회원 가입창</title>
</head>
<body>
<form method="post" action="forward.jsp">
<h1 style="text-align:center">회원 가입창</h1>
<table align="center">
<tr>
<td width="200">
<p align="right">아이디
</td>
<td width="400"><input type="text" name="id"></td>
</tr>
<tr>
<td width="200">
<p align="right">비밀번호
</td>
<td width="400"><input type="password" name="pwd"></td>
</tr>
<tr>
<td width="200">
<p align="right">이름
</td>
<td width="400"><input type="text" name="name"></td>
</tr>
<tr>
<td width="200">
<p align="right">이메일
</td>
<td width="400"><input type="text" name="email"></td>
</tr>
<tr>
<td width="200">
<p> </p>
</td>
<td width="400">
<input type="submit" value="가입하기">
<input type="reset" value="다시입력">
</td>
</tr>
</table>
</form>
</body>
</html>
2. forward.jsp 파일 작성
<%-- forward.jsp --%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("utf-8");
request.setAttribute("address", "서울시 강남구"); <%-- 회원 가입창의 request에 대해 다시 주소 정보를 바인딩 --%>
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>forward</title>
</head>
<body>
<jsp:forward page="member2.jsp"></jsp:forward> <%-- member2.jsp로 포워딩 --%>
</body>
</html>
회원 가입창의 request 객체에 setAttribute( ) 메서드를 이용해 address를 바인딩한 후 다시 member2.jsp로 포워딩
3. member2.jsp 파일 작성
<%-- member2.jsp --%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
isELIgnored="false" %>
<%
request.setCharacterEncoding("utf-8");
String id = request.getParameter("id");
String pwd = request.getParameter("pwd");
String name = request.getParameter("name");
String email = request.getParameter("email");
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>회원 정보 출력창</title>
</head>
<body>
<table border="1" align="center">
<tr align="center" bgcolor="#99ccff">
<td width="20%"><b>아이디</b></td>
<td width="20%"><b>비밀번호</b></td>
<td width="20%"><b>이름</b></td>
<td width="20%"><b>이메일</b></td>
<td width="20%"><b>주소</b></td>
</tr>
<tr align=center>
<td>${param.id }</td>
<td>${param.pwd }</td>
<td>${param.name }</td>
<td>${param.email }</td>
<td>${requestScope.address }</td> <%-- requestScope를 이용해 바인딩된 주소 정보를 출력 --%>
</tr>
</table>
</body>
</html>
requestScope를 이용해 바인딩된 address에 접근해서 주소를 출력한다.
4. http://localhost:8090/pro14/test01/memberForm.jsp로 요청해서 회원 가입창에 회원 정보를 입력하고 가입하기 클릭
5. 회원 가입창에서 회원 정보와 함께 forward.jsp에서 request 객체에 바인딩한 주소도 출력한다.
requestScope를 이용하면 request 객체에 바인딩된 데이터에 접근이 가능하다.
마찬가지로 session이나 application 객체에 바인딩된 데이터는 sessionScope나 applicationScope로 접근할 수 있다.
728x90
'웹 개발 기초 > 자바 웹을 다루는 기술' 카테고리의 다른 글
빈 사용 실습 (0) | 2023.03.01 |
---|---|
pageContext 객체 사용 실습 (0) | 2023.03.01 |
param 내장 객체 사용 실습 (0) | 2023.03.01 |
표현 언어 내장 객체(내장 변수) 종류 (0) | 2023.03.01 |
표현 언어의 산술, 비교, 논리, empty 연산자 (0) | 2023.03.01 |