국비학원/공부

28일차 jsp(3)

mikan- 2023. 7. 3. 15:57

# foward

<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body bgcolor = "gray">
	<h1>a.jsp로 오신걸 환영합니다.</h1>
<%
	// 메모리에 저장O (입력X) -> (입력을 받아서 전달)(O) -> 매개변수
	//                           (입력을 받아서 전달X) -> hidden객체 사용
	// <-> request.getAttribute("키명")
	//     request.getParameter("키명")(X)
	
	// 여기 su 는 move2.jsp의 su랑 다른 변수이다.
	int su = (Integer)request.getAttribute("total"); // 저장된 값은 Object -> 꺼낼땐 형변환 반드시 해야됨 -> Integer -> int
%>
total : <%= su %> <br>
move2.jsp에서 공유한 su값? <%=request.getAttribute("total") %>
</body>
</html>

 

# foward (2)

<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body bgcolor = "orange">
	<h1>b.jsp로 오신걸 환영합니다.</h1>
	<br>
	move2.jsp에서 공유한 날짜(d)값 : <%=request.getAttribute("cal") %>
</body>
</html>



<html>
<head>
<meta charset="UTF-8">
<title>페이지를 이동시키는 역할 페이지 + (데이터공유))</title>
</head>
<body>
	<h1>페이지이동(공유)</h1>
<%
	//----------------------추가-------------------------
		int su = 100; // su 라는 변수를 a.jsp에서도 사용하고싶은 경우(공유)
		Date d = new Date();
		
		// 서버의 메모리에 저장 -> 객체만 저장 -> 컬렉션 -> HashMap(key, value)
		// 형식) request|session|application.setAttribute("key name(키명)",값 );
		request.setAttribute("total", su); // Int -> Integer -> Object
		request.setAttribute("cal", d);
		
		
	//---------------------------------------------------
%>
	
	<%-- <jsp:include page = "sub.jsp" flush = "false" /><br>
	<%@ include file = "sub.jsp"%> --%> --%>
	
	<%
	String move = request.getParameter("move");
	String move1 = move + ".jsp";
	System.out.println("move : " + move1	);
	// response.sendRedirect("a.jsp"); // 단순히 이동만 시키고 싶을 때
	// forward = 페이지 이동 + 데이터 공유
	if (move1.equals("a.jsp")) {
		// response.sendRedirect("a.jsp"); url 변경 되면서 이동
	%>
	<!-- 
		forward 액션태그 page = "이동할 페이지명"(데이터를 공유하면서 이동)
	 -->
	<%-- <jsp:forward page="<%= move %>"/> --%>
	<jsp:forward page="a.jsp"/>
	<%} else if (move1.equals("b.jsp")) { %>
	<jsp:forward page="b.jsp"/>
	<% } else {%>
	<script>
		alert("당신이 요청하신 페이지는 없습니다.\n다시 확인하신 후 실행해 주세요.");
		location.href="forward.jsp";
	</script>
	<% } %>
 	<%-- <b><%=name %>님 오셨군요 환영합니다.</b> --%>
	<br>
나머지는 sub.jsp가 알아서 해줄겁니다.
</body>
</html>

 

# forward (3)

<html>
<head>
<meta charset="UTF-8">
<title>페이지를 이동시키는 역할 페이지</title>
</head>
<body>
	<h1>이동 페이지</h1>
	
	
	<%-- <jsp:include page = "sub.jsp" flush = "false" /><br>
	<%@ include file = "sub.jsp"%> --%> --%>
	
	<%
	String move = request.getParameter("move");
	String move1 = move + ".jsp";
	System.out.println("move : " + move1	);
	// response.sendRedirect("a.jsp"); // 단순히 이동만 시키고 싶을 때
	// forward = 페이지 이동 + 데이터 공유
	if (move1.equals("a.jsp")) {
		// response.sendRedirect("a.jsp"); url 변경 되면서 이동
	%>
	<!-- 
		forward 액션태그 page = "이동할 페이지명"(데이터를 공유하면서 이동)
	 -->
	<%-- <jsp:forward page="<%= move %>"/> --%>
	<jsp:forward page="a.jsp"/>
	<%} else if (move1.equals("b.jsp")) { %>
	<jsp:forward page="b.jsp"/>
	<% } else {%>
	<script>
		alert("당신이 요청하신 페이지는 없습니다.\n다시 확인하신 후 실행해 주세요.");
		location.href="forward.jsp";
	</script>
	<% } %>
 	<%-- <b><%=name %>님 오셨군요 환영합니다.</b> --%>
	<br>
나머지는 sub.jsp가 알아서 해줄겁니다.
</body>
</html>

'국비학원 > 공부' 카테고리의 다른 글

30일차 jsp(5) 모델1 - 회원가입 (로그인)  (0) 2023.07.03
29일차 jap(4) 메인페이지 + 자바빈즈 + 쿠키  (0) 2023.07.03
27일차 jsp(2)  (0) 2023.07.03
26일차 jsp(1)  (0) 2023.07.03
25일차 java(last) - ChatGUI make  (0) 2023.07.03