JSP九大内置对象


JSP九大内置对象

JSP有九个内置对象(又叫隐含对象),不需要预先声明就可以在脚本代码和表达式中使用,分别有四个作用域对象【从小到大:pageContext、request、session、application】和五个其他对象【out、response、config、page、exception】

1、pageContext对象

作用:pageContext 对象的作用是取得任何范围的参数,通过它可以获取 JSP页面的out、request、reponse、session、application 等对象。pageContext对象的创建和初始化都是由容器来完成的,在JSP页面中可以直接使用 pageContext对象。

生命周期:当前页面

2、request对象

作用:request 对象是 javax.servlet.httpServletRequest类型的对象。 该对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。生命周期:一次请求

常用方法如下:

        //1、设置字符编号集utf-8,处理请求过程中的中文乱码

        request.setCharacterEncoding("utf-8");

        //2、按照参数名称,获取请求中的参数值

        request.getParameter("");

        //3、请求转发【服务器】:服务器端直接转发请求,跳转并执行新页面

        request.getRequestDispatcher("list_product.jsp").forward(request,response);

        //4、在请求转发前,存入KV键值对

        request.setAttribute("key","value");

        //5、在请求转发后,根据key获取value

        request.getAttribute("key");

        //6、获取当前应用在服务器端的真实路径

        request.getRealPath("");

        //7、项目运行时的应用的访问名称

        request.getContextPath();

        //8、获取当前请求的方式

        request.getMethod();

        //9、获取发起本次请求的客户端IP地址

        request.getRemoteAddr();

        //10、获取服务器本地的IP地址

        request.getLocalAddr();

3、session对象

作用:session 对象是由服务器自动创建的与用户请求相关的对象。服务器为每个用户都生成一个session对象,用于保存该用户的信息,跟踪用户的操作状态。session对象内部使用Map类来保存数据,因此保存数据的格式为 “Key/value”。 session对象的key为String类型,value值为Object类型。

生命周期:开始于客户端的第一次"请求";结束于 ①客户端浏览器关闭   ②客户端请求超时(Tomcat默认为30分钟)    ③服务器关闭

常用方法如下:

        //1、获取当前Session会话对象

        HttpSessionsession=request.getSession();

        //2、获取当前会话ID

        session.getId();

        //3、将当前KV键值对,存入Session会话(服务器端)

        session.setAttribute("key","value");

        //4、从当前Session会话中,根据key获取value

        session.getAttribute("key");

        //5、获取当前Session 的创建时间

        newDate(session.getCreationTime());

        //6、本次会话最后一次访问时间

        newDate(session.getLastAccessedTime());

4、application对象

作用:application 对象可将信息保存在服务器中,直到服务器关闭,否则application对象中保存的信息会在整个应用中都有效。与session对象相比,application对象生命周期更长生命周期:开始于服务器启动;结束于服务器关闭

常用方法如下:

        //1、获取application对象

        ServletContextapplication=request.getServletContext();

        //2、获取application的真实路径

        application.getRealPath("");

        //3、获取应用访问名称

        application.getContextPath();

        //4、获取Session超时时间

        application.getSessionTimeout();

5、out

作用:out 对象用于在Web浏览器内输出信息,并且管理应用服务器上的输出缓冲区。在使用 out 对象输出数据时,可以对数据缓冲区进行操作,及时清除缓冲区中的残余数据,为其他的输出让出缓冲空间。待数据输出完毕后,要及时关闭输出流。

6、response

作用:response 代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效。

        //1、设置字符编码集为utf-8,处理响应过程中的中文乱码

        response.setContentType("text/html;charset=utf-8");

        //2、获取响应输出对象

        response.getWriter();

        //3、重定向【客户端】:通知客户端浏览器,重新定向请求新的页面地址,响应(输出)新页面至客户端浏览器

        response.sendRedirect("index.html");

7、config

作用:config 对象的主要作用是取得服务器的配置信息。通过 pageContext对象的 getServletConfig() 方法可以获取一个config对象。当一个Servlet 初始化时,容器把某些信息通过 config对象传递给这个 Servlet。

8、page

作用:page 对象代表JSP本身,是当前页面的Servlet实例,只有在JSP页面内才是合法的。

9、exception

作用:exception 对象的作用是显示异常信息,只有在包含 isErrorPage="true" 的页面中才可以被使用,在一般的JSP页面中使用该对象将无法编译JSP文件。如果在JSP页面中出现没有捕获到的异常,就会生成 exception 对象,并把 exception 对象传送到在page指令中设定的错误页面中,然后在错误页面中处理相应的 exception 对象。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容