• JSP的内置对象


    概念:

    JSP内置对象是Web容器创建的一组对象,不使用new关键字创建,就可以直接使用。

    常用的JSP内置对象:

    out对象

    缓冲区——Buffer,就是内存的一块区域,用来保存临时数据。

    out对象是JSPWriter类的实例,向客户端输出内容时常用的对象。

    out对象常用的方法有:

    • void println() 向客户端打印字符串;
    • void flush() 将缓冲区内容输出到客户端;
    • void clear() 清除缓冲区的内容,如果在flush之后调用会抛出异常;
    • void clearBuffer() 清除缓冲区的内容,在flush之后调用不会抛出异常;
    • int getBufferSize() 返回缓冲区字节数的大小,如果不设缓冲区则为0;
    • int getRemaining() 返回缓冲区还剩余多少可用;
    • boolean isAutoFlush() 返回缓冲区满时,是自动清空还是抛出异常;
    • void close() 关闭输出流

    get与post的区别

    表单有两种提交方式:get与post

    提交方式提交内容的方式数据量大小安全性效率适用情况
    get 明文,通过URL提交数据(数据在URL中可以看到) 不超过2KB 较低 适合提交数据量不大,安全性不高,的数据;比如:搜素、查询等功能。
    post 将用户提交的信息封装在HTML HEADER内 数据量大   适合提交数据量大,安全性高,的用户信息;比如:注册、修改、上传等功能。

     

    request对象

    客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。

    request对象是HttpServletRequest类的实例。

    request对象具有请求域,即完成客户端的请求之前,该对象一直有效。

    常用的方法有:

    • String getParameter(String name) 返回指定参数的参数值;
    • String[] getParameterValues(String name) 返回包含指定参数的所有参数值的数组;
    • void setAttribute(String,Object) 存储此请求中的属性;
    • object getAttribute(String name) 返回指定属性的属性值;
    • String getContentType() 得到请求体的MIME类型;
    • Stirng getProtocol() 返回请求的协议类型和版本号;
    • String getServerName() 返回接收请求的服务器主机名;
    • int getServerPort() 返回服务器接收此请求所用的端口号;
    • String getCharacterEncoding() 返回字符编码方式;
    • int getContentLength() 返回请求体的长度(字节数);
    • String getRemoteAddr() 返回发送此请求的客户端IP地址;
    • String getRealPath(String path) 返回某虚拟路径的真实路径;
    • String getContentPath() 返回上下文路径。

    response对象

    response对象包含了,响应客户请求的有关信息,在JSP中很少直接用到它。

    response对象是HttpServletResponse类的实例。

    response对象具有页面作用域,即访问一个页面时,该页面内的response对象只能对这次访问有效,其它页面的response对象对当前页面无效。

    常用的方法:

    • String getCharacterEncoding() 返回响应的字符编码;
    • void setContentType(String type) 设置响应的MIME类型;
    • PrintWriter getWriter() 返回一个 可以向客户端输出字符的 对象;(response对象生成的输出流对象,出现在out内置对象的前面)
    • sendRedirect(java.lang.String location) 重新定向客户端的请求。

    请求转发VS请求重定向

    方式Client/Server方法说明URL内容
    请求重定向 客户端行为 response.sendRedirect() 本质上等同于两次请求,前一次的请求对象不会保存 URL改变
    请求转发 服务器行为 request.getRequestDispatcher().forward(req,resp) 一次请求,转发后请求对象会保存 URL不变

    session对象

      session:客户端与服务器的一次会话

    Web中的session:用户在浏览某个网站时,从进入网站,到浏览器关闭所经过的这段时间,也就是,用户浏览这个网站所花费的时间。

      session实际上是一个特定的时间概念。

    session对象在第一个JSP页面被装载时自动创建,开始会话期管理。

    一个session:从客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束。

    session对象,是HttpSession类的实例。

    常用的方法:

    • long getCreationTime() 返回session创建时间;
    • String getId() 返回session创建时JSP引擎为它设的唯一ID号;
    • Object setAttribute(String name,Object value) 使用指定名称将对象绑定到此会话;
    • Object getAttribute(String name) 返回此对话中,与指定名称绑定在一起的对象,如果该名称下没有绑定对象,返回null;
    • String[] getValueNames() 返回一个 包含此会话中所有可用属性 的数组;
    • int getMaxInactiveInterval() 返回两次请求间隔多长时间此session被取消;
    • void setMaxInactiveInterval(long time) 设置两次请求间隔多长时间此session被取消。

    Session的生命周期

    创建:当客户端第一次访问某个jsp或者Servlet的时候,服务器会为当前会话创建一个SessionId,每次客户端向服务器端发送请求时,都会将该SessionId携带过去,服务器端会对此SessionId进行校验。

    活动:

    • 某次会话当中,通过超链接打开的新页面,属于同一次会话;
    • 只要当前会话页面没有全部关闭,重新打开新的浏览器窗口访问同一项目资源时属于同一次会话;
    • 除非本次会话的所有页面都关闭后,再重新访问某个jsp或者servlet将会创建新的会话。

    销毁:

    session的销毁方式有3种:

    1. 调用session.invalidate()方法;
    2. Session过期(超时);
    3. 服务器重新启动。

      tomcat默认session超时时间为30分钟,

    设置Session超时,两种方式:

    1. session.setMaxInactiveInterval(time) //单位是秒;
    2. 在web.xml中配置

    <session-config>

    <session-timeout>

    10

    </session-timeout>

    </session-config>  //单位是分钟

    application对象

    application对象,实现用户间数据的共享,可存放全局变量

    application对象,开始于服务器启动,终止于服务器关闭;

    在用户的前后连接或不同用户之间的连接中,可以对application对象的同一属性进行操作;

    在任何地方对application对象属性的操作,都将影响到其他用户对此的访问;

    application对象是ServletContext类的实例。

    常用的方法:

    • void setAttribute(String name,Object value) 使用指定名称将对象绑定到此会话;
    • Object getAttribute(String name) 返回此会话中,指定名称绑定的对象,如果该名称没有绑定任何对象,则返回null;
    • Enumeration getAttributeNames() 返回此会话所有可用属性名的枚举;
    • String getServerInfo() 返回JSP(servlet)引擎名及版本号。

     

    page对象

    page对象,就是指当前JSP页面本身,有点像类中的this指针;

    page对象,是java.lang.Object类的实例。

    pageContext对象

    pageContext对象,提供了对JSP页面内所有对象及名字空间的访问;

    pageContext对象,可以访问到本页所在的session,也可以取本页面所在的application的某一属性值;

    pageContext对象是pageContext类的实例。

    config对象

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

    常用的方法:

    • ServletContext getServletContext() 返回含有服务器相关信息的ServletContext对象;
    • String getInitParameter(String name) 返回初始化参数的值;
    • Enumeration getInitParameterNames() 返回Servlet初始化所需要的所有参数的枚举。

    exception对象

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

    常用方法:

    • String getMessage() 返回描述异常的消息;
    • String toString() 返回关于异常的简短描述消息;
    • void printStackTrace() 显示异常及其栈轨迹;
    • Throwable FillInStackTrace() 重写异常的执行栈轨迹。

     

     

    编程改变生活,创造改变世界
  • 相关阅读:
    生产排程系统设计(二)设计思路
    一个ExtJs项目的Demo
    信息流与生产作业的同步与监控
    生产企业的IT人才储备困局
    生产排程系统设计(三)设计概要
    生产排程系统设计(一)设计愿景
    找工作时,你如何看待薪资问题
    sql 跨服务器 select ,update,insert
    Biztalk和Widows Wrokflow Fundation的区别和联系
    BizTalk 2010 虚拟环境分布式安装需要注意的问题
  • 原文地址:https://www.cnblogs.com/lifelee/p/5316403.html
Copyright © 2020-2023  润新知