【JSP:关于Session传值的基本用法】

【JSP:关于Session传值的基本用法】

任务场景:

  • f o r m form form 输入方法。
    P a g e 1 Page1 Page1 界面输入两个参数,在 P a g e 2 Page2 Page2 界面输入两个参数,你希望在 P a g e 3 Page3 Page3 里面获得之前的四个参数。

S e s s i o n Session Session 传值的优点

  • 可以简单地处理多个网页情况下的参数传递与获取

用法

  • P a g e 1 Page1 Page1 ( P a g e 2 Page2 Page2 同理)
    使用 <form action = "validate.jsp"> ,使用中间验证页去处理。
<%@ page language = "java" pageEncoding = "utf-8" %>
<html>
	<head>
		<title>Input Vector_one</title>
	</head>
	<body>
		<div align="center">
		<form action = "validate1.jsp" method="post">
			Please input vector_one<br><br>
			<table>
				<tr><td align="right">Vector1.x:</td><td><input type="text" name="v1x"></td></tr>
				<tr><td align="right">Vector1.y:</td><td><input type="text" name="v1y"></td></tr>
			</table>
			<br><input type="submit" value="Next">
		</form>
		</div>
	</body>
</html>
  • P a g e 3 Page3 Page3 页面
    我们把四个参数首先使用 (String)session.getAttribute("var_name") ,把 o b j e c t object object 转到 s t r i n g string string
    然后使用 Intger.parseInt(s) 之类的函数把 s t r i n g string string 转到我们需要用的类型。
    然后使用 <%= var_name %> 去输出
<%@ page language = "java" pageEncoding = "utf-8" %>
<%request.setCharacterEncoding("utf-8"); %>
<html>
	<head>
		<title>Output</title>
	</head>
	<body>
		<div align="center">
			OUTPUT
		</div>
		<%
			String s1 = (String)session.getAttribute("V1X");
			String s2 = (String)session.getAttribute("V1Y");
			String s3 = (String)session.getAttribute("V2X");
			String s4 = (String)session.getAttribute("V2Y");
			double x1 = Double.parseDouble(s1);
			double y1 = Double.parseDouble(s2);
			double x2 = Double.parseDouble(s3);
			double y2 = Double.parseDouble(s4);
		%>
		Vector_one you input is ( <%=x1 %> , <%=y1 %>)<br>
		Vector_two you input is ( <%=x2 %> , <%=y2 %>)<br>
		Vector Add is ( <%=x1+x2 %> , <%=y1+y2 %>)<br>
		Vector Sub is ( <%=x1-x2 %> , <%=y1-y2 %>)<br>
		Vector cross product is <%=x1*y2-x2*y1 %><br>
		Vector dot product is (<%=x1*x2%>,<%=y1*y2%>)<br>
		
	</body>
</html>
  • V a l i d a t e Validate Validate 页面
    我们把四个参数传到四个 s t r i n g string string 类型里面去判断
    由于我们使用一个 v a l i d a t e . j s p validate.jsp validate.jsp 去处理了两个 p a g e page page ,所以稍微繁琐了一些,本来是不推荐的。
    我们判断输入为 m 1 = " ” m1="” m1=" 还是 m 1 = n u l l m1=null m1=null,以此判断我们目前在哪个界面。
    如果有输入为 " " "" "",那我们仍然进入自己的界面。否则,进入下一个界面。
    然后我们使用 session.setAttribute("var_name",key) 来达到传值的目的。
<%@ page language = "java" pageEncoding = "utf-8" %>
<%request.setCharacterEncoding("utf-8"); %>
<html>
	<head>
		<title>Validate2</title>
	</head>
	<body>
		<%
		String m1=request.getParameter("v1x");
		String m2=request.getParameter("v1y");
		String m3=request.getParameter("v2x");
		String m4=request.getParameter("v2y");
		if(m1=="" || m2==""){
			response.sendRedirect("Page1.jsp");
		}else if(m3=="" || m4==""){
			response.sendRedirect("Page2.jsp");
		}else if(m1!=null && m2!=null) {
	        session.setAttribute("V1X",m1);
	        session.setAttribute("V1Y",m2);
	        response.sendRedirect("Page2.jsp");
		}else if(m3!=null && m4!=null){
			session.setAttribute("V2X",m3);
			session.setAttribute("V2Y",m4);
			response.sendRedirect("Page3.jsp");
		}
		%>
	</body>
</html>

效果图

  • P a g e 1 Page1 Page1
    在这里插入图片描述
    P a g e 2 Page2 Page2
    在这里插入图片描述
    P a g e 3 Page3 Page3
    在这里插入图片描述
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值