4-5 关于setAttribute()中参数的问题
老师你好,我在练习时遇到了一个问题:
在转发时,我写道:
int a = Integer.parseInt(request.getParameter("num1"));
int b = Integer.parseInt(request.getParameter("num2"));
int sum=a+b;
request.setAttribute("sum", sum);
request.getRequestDispatcher("/zhuanfa.jsp").forward(request,response);
<h1>The result is:</h1>
<h3><%= request.getAttribute("sum")%></h3>
输出是没有问题的,但是在重定向时我写道
nt a = Integer.parseInt(request.getParameter("num1"));
int b = Integer.parseInt(request.getParameter("num2"));
int sum=a+b;
ServletContext sc = request.getServletContext();
sc.setAttribute("sum",sum);
response.sendRedirect("/FirstServlet/Redirect.jsp");
<% String succ= (String)application.getAttribute("sum"); %>
<h1>The result is:</h1>
<h3><%=succ %></h3>
输出是会报错的,除非把
sum转换为字符串才能正常显示。我很困惑为什么为什么转发时就可以直接用sum
而重定向时就必须要把sum转换为字符串。25
收起
正在回答
1回答
在API,setAttribute的第二个参数是Object类型的,你传递的参数应该也是可以的;建议同学把报错信息帖一下,方便帮助你解答。
祝学习愉快~
从网页搭建入门Java Web2018版
- 参与学习 人
- 提交作业 1088 份
- 解答问题 10204 个
如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星