Jsp一共预先定义了9个对象:request、response、session、application、out、pagecontext、config、page、exception。了解一下前面五个对象。
1.request
request代表 着客户端的请求信息,主要用于接受通过http协议传送到服务器的数据。request对象的作用域为一次请求。
1. String getParameter(String name)
根据请求的字段名key(input标签的name属性值),返回字段值value(input标签value属性值)获取客户端传送给服务器的name参数的值,当传送给此函数的参数名没有实际参数与之对应时返回null
2. String[] getParameterValues(String name)
根据请求的字段名key,返回多个字段值value
以字符串数组的形式返回指定参数的所有值
3. void setCharacterEncoding(“编码格式utf-8”)
设置请求编码
Tomcat7以前默认编码为ISO-8859-1
Tomcat8以后改为了utf-8
4. getRequestDispatcher(“B.jsp”).forward(request,response)
请求转发的方式跳转页面 A—>B
5. ServletContext getServerContext()
获取项目的ServletContext对象
get和post的区别
get会在地址栏上显示信息,post则不会,所以在进行用户账号密码登陆的时候一般采用post方法来避免密码泄露。
2.response
response代表对客户端的请求,主要将jsp容器处理过 的对象传回客户端,它只在jsp页面有效。
setContentType(String s),改变contentType的属性值
response.sendRedirect(index.jsp);重定向
3.session
session在网络中被称为会话。由于HTTP协议是一种无状态协议,也就是当一个客户向服务器发出请求,服务器接收请求,并返回响应后,该连接就结束了,而服务器并不保存相关的信息。为了弥补这一缺点,HTTP协议提供了session。通过session可以在应用程序的Web页面间进行跳转时,保存用户的状态,使整个用户会话一直存在下去,直到关闭浏览器。
public String getId()获取session对象的id
public void setAttribute(String key,Object obj)将参数Object指定的对象obj添加到Session对象中,并为添加的对象指定一个索引关键字。
public Object getAttribute(String key)获取Session对象中含有关键字的对象。
public Boolean isNew()判断是否是一个新的客户。
4.application
application对象用于保存所有应用中的共有数据。它在服务器启动时自动创建,在服务器停止时销毁。当application对象没有被销毁时,所有用户都可以共享该application对象。与session对象相比,application对象的生命周期更长,类似于系统的“全局变量”。
setAttribute(String key,Object obj)将参数Object指定的对象obj添加到Application对象中,并为添加的对象指定一个索引关键字。
getAttribute(String key)获取Application对象中含有关键字的对象。
5.out
用于在服务器上输出信息,并且管理应用服务器上的输出缓冲区
out.print()输出各种类型数据
out.newLine()输出一个换行符
out.close()关闭流。