request对象常用方法总结(及示例)----JSP内置对象
程序员文章站
2022-06-11 15:54:14
...
JSP内置对象:request对象
客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。request对象具有请求域,即完成客户端的请求之前,该对象一直有效。常用方法如下:
常用方法 | 方法介绍 |
---|---|
String getParameter(String name) | 返回name指定参数的参数值 |
String[] getParameterValues(String name) | 返回包含参数name的所有值的数组 |
void setAttribute(String,Object) | 存储此请求中的属性 |
Object getAttribute(String name) | 返回指定属性的属性值 |
String getContentType() | 得到请求体的MIME类型 |
String getProtocol() | 返回请求用的协议类型及版本号 |
String getServerName() | 返回接受请求的服务器主机名 |
int getServerPort() | 返回服务器接受此请求所用的端口号 |
String getCharacterEncoding() | 返回字符编码方式 |
void setCharacterEncoding() | 设置请求的字符编码方式 |
int getContentLength() | 返回请求体的长度(以字节数) |
String getRemoteAddr() | 返回发送此请求的客户端IP地址 |
String getRealPath(String path) | 返回一虚拟路径的真实路径 |
String request.getContextPath() | 返回上下文路径 |
代码运行后浏览器中显示如下,代码放在最后面;
代码文件有两个:
reg.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<h1>用户注册</h1>
<form name="regForm" action="request.jsp" method="get">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="username" /></td>
</tr>
<tr>
<td>爱好:</td>
<td><input type="checkbox" name="favorite" value="read">读书
<input type="checkbox" name="favorite" value="music">音乐
<input type="checkbox" name="favorite" value="moive">电影
<input type="checkbox" name="favorite" value="internet">上网</td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="提交" /></td>
</tr>
</table>
</form>
<br>
<br>
<a href="request.jsp?username=xxx">测试URL传参数</a>
</body>
</html>
request.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<h1>request内置对象</h1>
<%
request.setAttribute("password", "123456");
%>
用户名:<%=request.getParameter("username")%>
<br>
爱好:
<%
if (request.getParameterValues("favorite") != null) {
String[] fav = request.getParameterValues("favorite");
for (int i = 0; i < fav.length; i++) {
out.println(fav[i] + " ");
}
}
%>
<br>
密码:<%=request.getAttribute("password")%><br>
请求体的mime类型:<%=request.getContentType()%><br>
协议类型及版本号:<%=request.getProtocol()%><br>
服务器主机名:<%=request.getServerName()%><br>
请求的端口号:<%=request.getServerPort()%><br>
字符编码方式:<%=request.getCharacterEncoding()%><br>
请求体的长度:<%=request.getContentLength()%><br>
返回发送请求的客户端IP地址:<%=request.getRemoteAddr()%><br>
返回虚拟路径的真实路径:<%=request.getRealPath("request.jsp")%><br>
返回上下文路径:<%=request.getContextPath()%><br>
</body>
</html>
参考资料:
上一篇: ORB_SLAM2实战-(ORB_SLAM2-B)
下一篇: STM32编码器