作用域中管理属性

一、基本内容

1、请求转发时,如何实现不同页面之间的数据传递?

也就是前面说的从资源A发送给资源B数据的话,或者B资源要用A资源中的数据的话,用到请求转发(因为只有转发的时候,才能共享request)

将数据保存到request范围内的变量中,来实现不同页面之间的数据传递

2、如何将数据保存到request范围内的变量中呢?

request.setAttribute(String name, String object)//name--object<==>key--value

注意:session和application都是如此

3、通过request.getAttribute(String name)获取存储在request范围内的变量的值。

4、数据的有效范围:同一个request。


二、实例

例1:

index.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>测试request存放数据</title>
</head>
<body>
	<%
		try {//捕获异常信息
			int money = 100;
			int number = 0;
			request.setAttribute("result", money / number);//保存执行结果//因为number是0,所以会直接抛出异常到catch中
		} catch (Exception e) {
			request.setAttribute("result", "很抱歉,页面产生错误!");//保存错误提示信息
		}
	%>
	<jsp:forward page="deal.jsp" /><!--转发到deal.jsp中-->
</body>
</html>

deal.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>结果页</title>
</head>
<body>
	<%
	    String message = request.getAttribute("result").toString();
	%>
	<%=message%>
</body>
</html>

结果是:
 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值