一 点睛
服务器端只能通过request对象接收客户端发送的所有内容。我们常用request对象来接收请求信息中的参数。
页面在跳转或被包含时,会向服务器发送请求信息,服务器会将请求信息封装在request对象中,然后使用request对象获取请求信息,也就是传递参数。
我们也可以使用request对象获取用户提交的表单信息,然后对用户使用表单提交的信息进行处理。
二 实战
1 input.html
<%@ page contentType="text/html; charset=UTF-8" %>
<html>
<head>
<title>Request使用范例</title>
<meta charset="UTF-8">
</head>
<body>
<form action="input_do.jsp" method="post">
<!-- id是给JavaScript使用的、name是给JSP使用的 -->
请输入信息:<input type="text" name="msg" id="msg">
<input type="submit" value="发送">
</form>
</body>
</html>
2 input_do.jsp
<%@ page contentType="text/html; charset=UTF-8" %>
<html>
<head>
<title>JSP</title>
<meta charset="UTF-8">
</head>
<body>
<%
request.setCharacterEncoding("UTF-8");
String msg = request.getParameter("msg") ;
out.println("<h1>输入内容为:"+msg+"</h1>") ;
%>
</body>
</html>
3 运行
4 说明
request.setCharacterEncoding()方法,将信息的传输编码设置为UTF-8。JSP传输数据的默认编码是ISO-8859-1,但该编码格式不支持中文。如果要传输中文,则需要将生成的html文件的编码格式改为“utf-8”,并且将request解析请求时所使用的格式也设置为相应的格式。
getParameter方法使用的三种场景:
-
<jsp:include>和<jsp:forward>标签里面可以利用<jsp:param>传递参数。
-
利用表单实现参数传递,接收的是表单控件中的name的内容。
-
利用地址重写传递参数。
三 参考