04-JSP 内置对象
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了04-JSP 内置对象相关的知识,希望对你有一定的参考价值。
JSP 九大内置对象
out 对象
方法 | 返回 | 说明 |
---|---|---|
println() | void | 向客户端打印字符串 |
clear() | void | 清除缓冲区的内容,如果在flush()之后调用会抛出异常 |
clearBuffer() | void | 清除缓冲区的内容,如果在flush()之后调用不会抛出异常 |
flush() | void | 将缓冲区内容输出到客户端 |
getBufferSize() | int | 返回缓冲区以字节数的大小,如不设缓冲区则为0 |
getRemaining() | int | 返回缓冲区还剩余多少空间可用 |
isAutoFlush() | boolean | 返回缓冲区满时,是自动清空还是抛出异常 |
close() | void | 关闭输出流 |
get 和 post 区别
<form name="regForm" action="动作" method="请求方式">
</form>
- get: 以明文的方式通过 URL 提交数据,数据在 URL 中可以看到。提交的数据最多不超过 2kb。安全性较低但效率比 post 方式高。适合提交数据量不大,安全性不高的数据。比如:搜索、查询等功能。
- post: 将用户提交的信息封装在 html HEADER 内。适合提交数据量大,安全性高的用户信息。比如:注册、修改、上传等功能。
request 对象
方法 | 返回 | 说明 |
---|---|---|
getParameter(String name) | String | 返回name指定参数的参数值 |
getParameterValues(String name) | String [] | 返回包含参数name的所有值的数组 |
setAttribute(String, Object) | void | 存储此请求中的属性 |
getAttribute(String name) | Object | 返回指定属性的的属性值 |
getContentType() | String | 得到请求体的MIME类型 |
getProtocol() | String | 返回请求用的协议类型及版本号 |
getServerName() | String | 返回接受请求的服务器主机名 |
getServerPort() | int | 返回服务器接受此请求所用的端口号 |
getCharacterEncoding() | String | 返回字符编码方式 |
getContentLength() | int | 返回请求体的长度(字节数) |
getRemoteAddr() | String | 返回发送此请求的客户端IP地址 |
getRealPath(String path) | String | 返回一虚拟路径的真实路径 |
getContextPath() | String | 返回上下文路径 |
<%
// 解决中文乱码问题,但无法解决URL传递中文出现乱码的问题
request.setCharacterEncoding("utf-8");
%>
<!-- 添加 URIEncoding 属性 -->
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="utf-8" />
response 对象
方法 | 返回 | 说明 |
---|---|---|
getCharacterEncoding() | String | 返回响应用的何种字符编码 |
setContentType(String type) | void | 设置响应的 MIME 类型 |
getWriter() | PrintWriter | 返回可以向客户端输出字符的一个对象(与内置out对象有区别) |
sendRedirect(String location) | void | 重新定向客户端的请求 |
<%
out.println("内置对象 out 输出内容<br>");
// 如果不加 flush(),outer 会在 out 前输出
out.flush();
PrintWriter outer = response.getWriter();
outer.println("response.getWriter() 输出内容<br>");
%>
请求转发和请求重定向的区别
以上是关于04-JSP 内置对象的主要内容,如果未能解决你的问题,请参考以下文章