JSP九大内置对象详解

JSP与PHP、ASP、ASP.NET等语言类似,运行在服务端的语言。
JSP(全称Java Server Pages)是由Sun Microsystems公司倡导和许多公司参与共同创建的一种使软件开发者可以响应客户端请求,而动态生成HTML、XML或其他格式文档的Web网页的技术标准。
JSP技术是以Java语言作为脚本语言的,JSP网页为整个服务器端的Java库单元提供了一个接口来服务于HTTP的应用程序。
JSP文件后缀名为(*.jsp)。
JSP开发的WEB应用可以跨平台使用,既可以运行在Linux上也能运行在Window上。

———-
1. out–> JspWriter类的实例。
– 主要用于把结果输出到网页上
常用方法:
1 out.println() 分行显示
2 out.print()显示
3 out.flush();输出缓冲区中的数据。
4 out.clear();清除缓冲区,不将数据发送至客户端。
5 out.clearBuffer();将数据发送至客户端后,清除缓冲区中的内容。
6 out.getBufferSize();
获取缓冲区的大小。缓冲区的大小可用<%@ page buffer=”size” %>设置。
7 out.getRemaining();获取缓冲区剩余空间的大小
8 out.isAutoFlush();
获取用<%@ page is AutoFlush=”true/false”%>设置的AutoFlush值。
9 out.newLine()换行

———-

2. request–>HttpServletRequest
– 客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后作出响应。
常用方法:
1 Object getAttribute(String name) 返回指定属性的属性值
2 Enumeration getAttributeNames() 返回可有可用属性名的枚举
3 String getCharacterEncoding() 返回字符编码
4 void setCharacterEncoding(String encode)设置字符编码
5 String getParameter(String name) 返回name指定参数的参数值 需要int类型时注意类型转换,Integer.parseInt(String str)
6 Enumeration getParameterNames()返回可用参数名的枚举
7 String[] getParameterValues(String name) 返回包含参数name的所有值的数组
8 getRequestDispatcher(“”).forward(request, response) 转发,服务器行为,一次访问请求,地址不变,request和response传递
9 String getMethod() 返回请求方式

———-

3. response–>HttpServletResponse
–response对象包含了响应客户请求的有关信息,但是在JSP中很少直接用到它
1 sendRedirect(String location) 重定向客户请求
,客户端行为,新的http请求,地址改变,无request和response传递。

———-

4. session–>HttpSession
–session对象值得是客户端与服务器的一次会话,从客户端连到服务器的一个WebApplication开始,知道客户端与服务器断开连接为止。
 1 void setAttribute(String attribute,Object value) 设置session属性,value通常为JavaBean
 2 Object getAttribute(String attribute)返回对应属性的值
 3 Enumeration getAttributeNames() 返回属性名字组成的数组
 4 removeAttribute()移除session中指定名称的对象
 5 invalidate()将session无效化,解绑任何与该session绑定的对象

删除Session数据
当处理完一个用户的会话数据后,您可以有如下选择:
移除一个特定的属性:
调用public void removeAttribute(String name) 方法来移除指定的属性。
删除整个会话:
调用public void invalidate() 方法来使整个session无效。
设置会话有效期:
调用 public void setMaxInactiveInterval(int interval) 方法来设置session超时。
登出用户:
支持servlet2.4版本的服务器,可以调用 logout()方法来登出用户,并且使所有相关的session无效。
配置web.xml文件:
如果使用的是Tomcat,可以向下面这样配置web.xml文件:

15

超时以分钟为单位,Tomcat中的默认的超时时间是30分钟。
Servlet中的getMaxInactiveInterval( ) 方法以秒为单位返回超时时间。如果在web.xml中配置的是15分钟,则getMaxInactiveInterval( ) 方法将会返回900。

5. application–>ServletContext
--从servlet配置对象获得的servlet上下文
作用域:一次服务器重启
重用方法:
从服务器启动后不会再改变的数据

    application.setAttribute(name,value)
    application.getAttribute(name);

6. config–>ServletConfig
本JSP 的ServletConfig
常用方法:
config.getInitParameter(name):获取jsp的初始化参数值
Enumeration:config.getInitParameterNames():获取jsp所有初始化参数的名称
config.getServletName():获取jsp(servlet)名称

<servlet>
    <servlet-name>myjsp</servlet-name>
    <jsp-file>/config/01.jsp</jsp-file>
    <init-param>
        <param-name>username</param-name>
        <param-value>admin</param-value>
    </init-param>
    <init-param>
        <param-name>password</param-name>
        <param-value>123456</param-value>
    </init-param>
</servlet>
<servlet-mapping>
    <servlet-name>myjsp</servlet-name>
    <!-- http://localhost:8080/javaWeb/myjsp-->
    <url-pattern>/myjsp</url-pattern>
</servlet-mapping>


...01.jsp
    String username = config.getInitParameter("username");
    String password = config.getInitParameter("password");
    Enumeration<String> enu = config.getInitParameterNames();
    while(enu.hasMoreElements())
    {
        String name = enu.nextElement();
    }

7. page–>Object,类似this
作用域,page
8. pageContext–>PageContext
作用域:page
--pageContext.getRequest()
pageContext.getSession()
pageContext.setAttribute(name,value);
pageContext.getAttribute(name);
9. Exception–>Exception
--依赖page指令中isErrorPage=”true”
本JSP页面的异常对象
作用域:Page
常用方法:
exception.getMessage();
JSP常见错误状态码:
403:禁止访问:比如IP地址被拒绝,站点访问被拒绝等
404:找不到,没有找到文件或目录
500:服务器由于遇到错误而不能完成该请求,Web服务器太忙.

jsp访问方式:
1.直接通过url访问,无法给jsp传递初始化参数
2.在web.xml中配置访问

作用域
1.pageContext:当前页面有效
2.request:一次请求,地址不变
3.session:一次会话(浏览器开闭
4.application:一次服务器开闭

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值