[JSP]9个内置对象

1、out:

out对象是JspWriter类的实例,是向客户端输出内容常用的对象; JSP的输出流,等同于表达式;
out.println("test");

2、request:

客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应.它是HttpServletRequest类的实例。
获取表单提交参数,在请求完成后,作用域结束,变量失效;

String userName = request.getParameter("userName");

获取表单多个参数,返回数组, 比如checkbox多选的参数;

String[] chooseOs=request.getParameterValues("os");

设置请求的编码;

request.setCharacterEncoding("UTF-8");

设置和访问共享属性;

Java代码
request.setAttribute("error", "用户名不能为空.");//设置request属性
request.getAttribute("error");//得到request属性
request.removeAttribute("error");//移除request属性

得到访问用户的ip地址:

Java代码
request.getRemoteAddr();

得到当前目录或者jsp文件等的绝对路径(返回页面部署的路径,参数同样可以查找文件的路径);

Java代码
request.getRealPath("");//当前目录
request.getRealPath("a.jsp");//jsp文件

3、response:

response对象包含了响应客户请求的有关信息.它是HttpServletResponse类的实例。
服务器传给浏览器的文本信息;

增加header属性,比如通知浏览器不要缓存这个响应(运行后可通过TCPTrace观察响应头部的变化);

Java代码
response.addHeader("pragma", "no-cache");
response.addHeader("cache-control", "no-cache");
response.addHeader("expires", "0");

页面重定向(发送两次请求,返回两次响应);

Java代码
response.sendRedirect("url地址");

4、session:

session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止.它是HttpSession类的实例.
会话,session对象是每个访问用户专用的;

设置和访问共享属性;

Java代码
session.getAttribute("bean");//得到session属性
session.setAttribute("bean",bean);//设置session属性
session.removeAttribute("bean");//移除session属性

销毁session会话(键,值);

Java代码
session.invalidate();

5、pageContext:

pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说它可以访问到本页所在的SESSION,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能的集大成者,它的本类名也叫pageContext;

页面转发请求(一次发送请求,返回一次响应,直接转发到该页面);

Java代码
pageContext.forward("url地址");

6、application:

application对象实现了用户间数据的共享,可存放全局变量.它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问.服务器的启动和关闭决定了application对象的生命.它是ServletContext类的实例.
配置全局信息,得到相关数据.该对象保存了一个应用系统中一些公用的数据,与session对象相比,application对象是所有客户共享的;

得到servlet的版本号;

Java代码
application.getMajorVersion()+"."+application.getMinorVersion();

可配置的全局信息(通过web.xml);

Java代码
application.getInitParameter("company.name(<param-name>属性)");
//在web.xml中加入:
<context-param>
<param-name>company.name</param-name>
<param-value>北京xxx信息技术有限公司</param-value>
</context-param>

Java代码
.getMajorVersion();//得到servlet大版本号
.getMinorVersion();//得到servlet小版本号
.getServerInfo();//得到服务器信息
.setAttribute("","");//设置共享全局属性信息
.getAttribute("");//得到共享全局属性信息

7、config:

config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象);

设置jsp页面的常量(通过web.xml);

Java代码
config.getInitParameter("page.title(<param-name>属性)");
//在web.xml中加入:
<servlet>
<servlet-name>configServlet</servlet-name>
<jsp-file>/config.demo.jsp</jsp-file>
<init-param>
<param-name>page.title</param-name>
<param-value>config对象演示</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>configServlet</servlet-name>
<url-pattern>/config.demo.jsp</url-pattern>
</servlet-mapping>

8、page:

page对象就是指向当前JSP页面本身,JSP页面的this指针,它是java.lang.Object类的实例;

9、exception:

JSP页面中的异常;
exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象.如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译.他实际上是java.lang.Throwable的对象.


如果给你带来帮助,欢迎微信或支付宝扫一扫,赞一下。