码迷,mamicode.com
首页 > Web开发 > 详细

serverlet与 jsp传值

时间:2014-06-27 07:04:57      阅读:290      评论:0      收藏:0      [点我收藏+]

标签:jsp   serverlet      

一、jsp -> serverlet

JSP页面有3种方法向 servlet传值: form表单、URL 、其他

二、serverlet -> jsp

(1) redirect方式

  request和response没有传给目标页面

  response.sendRedirect("/a.jsp");

  页面的路径是相对路径。sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如:

  response.sendRedirect("URL");跳转后浏览器地址栏变化。

  这种方式要传值出去的话,只能在url中带parameter或者放在session中,无法使用request.setAttribute来传递。

  传值:HttpSession session = request.getSession();

    session.setAttribute("bbbb", 1111111111);

  取值:session.getAttribute("bbbb");

  传值:RequestDispatcher rd = application.getRequestDispatcher("/queryResult.jsp?a="+000);

  取值:request.getParameter("a")  

2) forward方式

  ServletContext application = this.getServletContext();//this是这个页面

  RequestDispatcher rd = application.getRequestDispatcher("/目标页面");

  rd.forward(request, response);

  Servlet页面跳转的路径是相对路径。forward方式只能跳转到本web应用中的页面上,跳转后浏览器地址栏不会变化。

  使用这种方式跳转,传值可以使用三种方法:url中带parameter,session,request.setAttribute

  传值:request.setAttribute("a", 00);

  取值:request.getAttribute("a");

  传值:HttpSession session = request.getSession();

    session.setAttribute("bbbb", 1111111111);

  取值:session.getAttribute("bbbb");

  传值:RequestDispatcher rd = application.getRequestDispatcher("/queryResult.jsp?a="+000);

  取值:request.getParameter("a");

  getParameter只能传递字符串setAttribute/getAttribute可以传递对象 

  其次getParameter方法传递的数据,会从Web客户端传到Web服务器端,代表HTTP请求数据。   

  只能是页面发送到后台或者Web客户端传到Web服务器端


serverlet与 jsp传值,布布扣,bubuko.com

serverlet与 jsp传值

标签:jsp   serverlet      

原文地址:http://iltxin.blog.51cto.com/5864827/1431167

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!