今天是2018.7.31日 找工作的第三天
今天参与的面试的收获之一是了解了JSP的内置对象。
JSP的九大内置对象分别为response、request、out、session、config、exception、application、pagecontext、cookie。
其中对其逐一解析如下:
1、request对象。
resquest对象是javax.servlet.http.HttpServletRequest类的一个实例。客户端的请求信息封装在resquest中发送给服务器端。request的作用域是一次请求。(由该对象将用户的请求信息封装发给服务器端,其作用域只有一次请求)。
常用request的getParameter(String name)来接收客户端的请求参数内容。
请求方式:request.getMethod()
请求的资源:request.getRequestURI()
请求用的协议:request.getProtocol()
请求的文件名:request.getServletPath()
请求的服务器的IP:request.getServerName()
请求服务器的端口:request.getServerPort()
客户端IP地址:request.getRemoteAddr()
客户端主机名:request.getRemoteHost()
2、response对象。
response对象是javax.servlet.http.HttpServletResponse的一个实例。服务端 的相应信息封装在response中返回。
重定向客户端请求 response.sendRedirect(index.jsp)
3、session对象。
session对象是javax.servlet.http.HttpSession的一个实例。在第一个JSP页面被装载时自动创建,完成会话期管理。
session对象内部使用Map类来保存数据,因此保存数据的格式为 “Key/value”。(页面加载时自动创建,在页面关闭时候销毁。数据保存方式是Key-value形式)
获取Session对象编号 session.getId()
添加obj到Session对象 session.setAttribute(String key,Object obj)
获取Session值 session.getAttribute(String key)
4、application对象。
application对象是javax.servlet.ServletContext的一个实例。它实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在。(生命周期 服务器启动到服务器关闭)
添加obj到Application对象 application.setAttribute(String key,Object obj)
获取Application对象中的值 application.getAttribute(String key)
5、out 对象。
out对象是javax.servlet.jsp.jspWriter的一个实例。用于浏览器输出数据。
输出各种类型数据 out.print()
输出一个换行符 out.newLine()
关闭流 out.close()
6、pageContext 对象。
pageContext 对象是javax.servlet.jsp.PageContext的一个对象。作用是取得任何范围的参数,通过它可以获取 JSP页面的out、request、reponse、session、application 等对象。
7、config 对象。
config 对象是javax.servlet.ServletConfig的一个对象。主要作用是取得服务器的配置信息。通过 pageConext对象的 getServletConfig() 方法可以获取一个config对象。
8、exception 对象。
exception 对象的作用是显示异常信息,只有在包含 isErrorPage="true" 的页面中才可以被使用。(默认的页面 isErrorPage的值为“false”)
9、cookie 对象。
cookie 对象是Web服务器保存在用户硬盘上的一段文本。唯一的记录了用户的访问信息。(即我们在网络访问中的cookie)
将Cookie对象传送到客户端 Cookie c = new Cookie(username",john");
读取保存到客户端的Cookie response.addCookie(c);
通过对以上九种内置对象的灵活运用,更加利于我们学习前端知识。