pageContext 객체 사용 실습
pageContext 객체는 javax.servlet.jsp.PageContext 클래스를 상속해 웹 컨테이너가 JSP 실행 시 자동으로 생성해서 제공하는 내장 객체입니다. 이번에는 pageContext 객체의 편리한 기능을 사용해 보겠습니다.
<a> 태그를 이용해 다른 서블릿이나 JSP를 요청하는 방법은 다음의 두 가지입니다.
첫 번째는 컨텍스트 이름을 직접 입력하는 방법입니다.
<a href="/pro14/test01/memberForm.jsp"> 회원 가입하기</a>
두 번째는 getContextPath() 메서드를 이용해 컨텍스트 이름을 가져오는 방법입니다.
<a href="<%=request.getContextPath() %>/test01/memberForm.jsp">회원 가입하기</a>
그런데 첫 번째 방법은 컨텍스트 이름이 바뀌면 일일이 찾아서 수정해야 한다는 단점이 있고, 두 번째 방법은 자바 코드가 사용되므로 화면 적업이 복잡해진다는 단점이 있습니다. 그러나 pageContext 객체의 속성인 request의 contextPath 속성을 이용하면 쉽게 컨텍스트 이름을 가져올 수 있습니다.
1. 다음과 같이 login.jsp를 작성합니다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
isErrorPage="false"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>로그인창</title>
</head>
<body>
<form action="result.jsp">
아이디: <input type="text" size=20 /><br>
비밀번호: <input type="password" size=20 /><br>
<input type="submit" value="로그인" /> <input type="text" value="다시입력" />
</form>
<br><br>
<!-- <a href="http://localhost:8090/pro14/test01/memberForm.jsp">회원가입하기</a> -->
<%-- <a href="<%=request.getContextPath() %>/test01/memberForm.jsp">회원가입하기</a> --%>
<a href="${pageContext.request.contextPath}/test01/memberForm.jsp">회원가입하기</a>
</body>
</html>
2. http://localhost:8090/pro14/test01/login.jsp로 로그인창을 요청하여 회원가입하기를 클릭합니다.

3. 회원 가입창으로 이동합니다.

'프로그래밍 언어 > 자바 웹' 카테고리의 다른 글
| Collection 객체 사용 실습 (0) | 2026.01.16 |
|---|---|
| 빈 사용 실습 (0) | 2026.01.13 |
| requestScope 사용 실습 (0) | 2026.01.07 |
| param 내장 객체 사용 실습 (0) | 2026.01.03 |
| 표현 언어에서 제공하는 내장 객체의 종류와 기능 (0) | 2025.12.31 |