--- title: JSP与Servlet之间传值 english_title: top: 0 date: 2017-03-20 01:13:57 categories: 笔记 tags: - J2EE - Servlet - JSP fancybox: comments: true permalink: description: --- Jsp与Servlet之间的传值有两种,一种是Jsp传值给Sevlet,另一种是Servlet传值给Jsp;使用request、response对象完成传值,具体实现如下: ## 1.JSP传值给Servlet JSP传值给Servlet有几种形式:Form表单传值,url传值,其他方式传值 ### a、form表单传值: JSP页面有: ``` ``` 将department的id传到Sevlet 中,在程序中如下: ``` ServletRequest request;String staffdepartment=request.getParameter("staffdepartment"); ``` 可获取jsp传的department,但要获取id还要进行转化: ``` int int_staffdepartment=Integer.parseInt(staffdepartment); ``` ### b、url传值 比如这里的 ``标签的 href属性与 `
`标签的 action属性的值 `"JspServlet?action=toServlet"`,在 servlet同样用 `request.getParameter("action")`获取; ### c、java代码传值 java片段代码,servlet只能接到 `session.setAttribute("testSession","Hello session")`的内容,而接不到 request的内容。在 servlet里用 `request.getSession().getAttribute("testSession")`获取 session内容。 ## 2.Servlet传值给Jsp 具体实现如下: java代码: ```java String a= "abccdefg "; request.setAttribute( "ValueA ",a); request.getRequestDispatcher( "网址/jsp页面 ").forward(request,response); ``` jsp页面: ```jsp <% String s =(String)request.getAttribute( "ValueA "); %> ``` jsp页面就可以取出Servlet的值。