JSP内置对象
JSP内置对象
request对象
request对象获取用户提交信息
- request对象封装了用户提交的信息,该对象调用相应的方法可以获取封装的信息(即使用该对象可以获取用户提交的信息)
- request对象是实现了ServletRequest接口的一个实例
- request对象常用获取用户提交信息的方法是getParameter(String s)。
-
该方法根据表单中的name属性获取用户提交的信息.
request对象处理汉字信息
- request.setCharacterEncoding(“utf-8”);
- 将JSP页面的编码设置为utf-8
常用方法
- 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() 返回上下文路径
response对象
response对象对用户的请求做出动态相应,向用户发送数据
动态响应contentType属性
response.setContentType(“MIME类型”) MIME类型:text/html,image/jpeg等
response对象的HTTP文件头
setHeader(String head,String value);
或
addHeader(String head,String value);
动态添加响应头和头的值
response.setHeader(“refresh”,“5”);-----每5秒刷新一次页面
重定向
sendRedirect(URL url);
让用户从一个页面跳转到url设置的页面
一般在用户未把表单填写完整时使用
session对象
session对象记录用户的信息
session是HttpSession接口的一个实例
session对象在创建时会和一个id号对应(依赖cookie)
URL重写
让response对象调用encodeURL()或encodeRedirectURL()方法实现URL重写
如:
String str=response.ecodeRedirectURL("跳转的页面的URL")
<form action="str" method="post">
session对象存储数据
/**
* 将对象obj添加到session对象中,并且添加的对象指定一个关键字key
* 如果,两个关键字相同,则先前的对象将被清除
*/
public void setAttribute(String key,Object obj);
/**
* 获取session对象关键字为key的对象
*/
public void getAttribute(String key);
/**
* 遍历session中的各个对象的关键字
*
public Enumerationg getAttributeNames();
/**
* 移除关键字key对应的对象
*/
public void removeAttribute(String key);
session对象的生命周期
invalidate()使session无效
application对象
/**
* 将对象obj添加到application对象中,并且添加的对象指定一个关键字key
* 如果,两个关键字相同,则先前的对象将被清除
*/
public void setAttribute(String key,Object obj);
/**
* 获取application对象关键字为key的对象
*/
public void getAttribute(String key);
/**
* 遍历application中的各个对象的关键字
*
public Enumerationg getAttributeNames();
/**
* 移除关键字key对应的对象
*/
public void removeAttribute(String key);