jsp页面的值怎么传值到Java类里面

Python016

jsp页面的值怎么传值到Java类里面,第1张

举个例子

public class H{

    String str

    public void setStr(String str){

        this.str=str

    }

}

在jsp页面

<%

String str=request.getParameter("user")    //获取表单的值

H.setStr(str)        //这样就把值传到java类了

%>

差不多就是这个流程

jsp与java文件传递数据可以使用Servlet类来传递,jsp将数据存入到request对象中,Servlet类获取这个request对象,并将数据取出。

示例代码如下:

JSP代码:<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <title>Demo</title>

  </head>

  <body>

      <form action="/demoServlet" method="post">

          <input type="text" name="name"/>

          <input type="submit" value="提交"/>

      </form>

  </body>

</html>

Servlet代码:

public class DemoServlet extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)

            throws ServletException, IOException {

        String name = request.getParameter("name")//获取jsp页面输入的参数

        System.out.println(name)

    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)

            throws ServletException, IOException {

        doGet(request, response)

    }

}

表单提交之后,调用Servlet类的方法,通过request对象获取jsp页面传入的参数值,实现数据的传递。

可以使用Servlet类来传递

返回一个RequestDispatcher对象

该对象的forward()方法用于转发请求

RequestDispatcher getRequestDispatcher(String path)

例如:request.getRequestDispatcher(“url”),forward(request,response)

设置追加请求中所需的属性参数

Void setAttribute(“属性名”,”属性值”)

例如:request,setAttribute(“username”,”administrator”)

用于获取请求中携带的属性参数

Object getAttribute(“属性名”)

例如:String usernam=(String)request.getAttribute(“username”)

响应对象response方法:response.sendRedirect(“url”)

用于充定向一个新的URL地址

经常配合使用session会话对象进行所需属性参数的传递

例如:session,setAttribute(“username”,”administrator”)

session.serAttribute(“password”,”123456”)

...

If()username!=null{

Out.println(“欢迎你:”+username.toString()

}

2.转发和重定向的区别

分别从5个点进行划分区别

(1)URl变化:转发不会发生变化,重定向会改变地址栏的URL

(2)重新发出请求:转发不会,从头至尾只有一次请求,重定向会发起两次请求

(3)是否携带请求:转发会携带request相关信息,重定向不会携带,所以会丢失

(4)目标URl要求:转发只能跳转WEB项目下的目标文件,重定向可跳转任意URL

(5)行为区别:转发时服务器端的行为,重定向时客户端行为

3.四中常用的跳转方式

(1)后台发起转发请求

request.getRequestDispatcher(“index.jsp”).forward(request,response)

(2)后台发起重定向

Response.sendRedirect(“indec.jsp”)

<!--3.jsp标签跳转 相当于前端的转发-->

<jsp:forward page=”index.jsp”>

<jsp:param value=”admin” name=”user name”>

<jsp:param value=”123456” name=”password”>

</jsp:forward>

<!--4.超链接跳转 get请求方式跳转页面 类似于前段的重定向-->

<a href=”index.jsp?username=admin&admin&password=123456”>跳转index.jsp</a>