一、form表单
<form action="demo02.jsp" method="get">
用户名:<input name="name" /> <br />
密码:<input name="pwd" /> <br />
爱好:
<input type="checkbox" name="hobby" value="sleep">睡觉
<input type="checkbox" name="hobby" value="game">打游戏
<input type="checkbox" name="hobby" value="study">学习 <br>
<input type="submit" /> <br />
</form>
二、a标签
//单个参数:<a href="地址?参数名=值"></a>,
//多个参数用&隔开:<a href="地址?参数1=值&参数2=值"></a>
<a href="demo02.jsp?name=zhangsan&age=5">demo02</a>
三、jsp:forward
把请求转到一个新的页面
<jsp:forward page=“new URL”>
forward动作用于将控制权从JSP页面传递给本地服务器的另一个位置。丢弃当前页面生成的任何内容,并在替换位置上重新处理请求。forward标签只有一个page属性。page属性包含的是一个相对URL ,可以是HTML页面、JSP页面或者是Servlet的url-pattern。page的值既可以直接给出,也可以在请求的时候动态计算,通过表达式来实现,如:
<jsp:forward page=’<%=“new”+newNo+".html"%>’ >
此标签在传递页面的控制权到另外的页面的时候,可以把相应的参数值传递到目的页面。如果需要传递参数,使用<jsp:param >标签,注意这时必须要使用对标签。把<jsp:param >标签包含在里面。
<jsp:forward page="demo02.jsp">
<jsp:param name="" value=""/>
</jsp:forward>
四、取参数
JSP
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
${param.name}<br>
${param.pwd}<br>
${paramValues.hobby}<br>
</body>
</html>
servlet
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/HelloServlet")
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String [] hobbies = req.getParameterValues("hobby");//可以使用req.getParameter(“参数名”)的方式获得。
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
五、取web.xml定义的参数Filter
5.1在web.xml中定义参数
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<filter>
<filter-name>FilterServlet</filter-name>
<filter-class>FilterServlet</filter-class>
<init-param>
<param-name>name</param-name>
<param-value>seven</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>FilterServlet</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<context-param>
<param-name>startTime</param-name>
<param-value>9</param-value>
</context-param>
<context-param>
<param-name>endTime</param-name>
<param-value>22</param-value>
</context-param>
</web-app>
5.2在servlet中取参数
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/HelloServlet")
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
ServletContext application = request.getServletContext();
String startTime = application.getInitParameter("startTime");
String endTime = application.getInitParameter("endTime");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}