《HandsOn实训教程系列.ppt》由会员分享,可在线阅读,更多相关《HandsOn实训教程系列.ppt(25页珍藏版)》请在三一办公上搜索。
1、专题五 JSP隐含对象,教学目标,了解各个JSP内置对象 掌握各个主要内置对象用法,工作任务,使用JSP内置对象实现用户登录功能,显示用户配置信息使用JSP内置对象显示当前请求的容器信息,使用JSP内置对象实现用户登录功能,显示用户配置信息,新建工程和页面,新建一个工程innerobject。新建和编写login.jsp代码:,Insert title hereUsername:Password:,验证页面中添加用户名验证,3.新建CheckUser.jsp页面,在该页面中编写验证表单的username信息,如果为空用response转向到login.jsp,代码如下:,验证页面中添加密码验证
2、,4.在CheckUser.jsp页面中添加验证表单的pwd信息,如果为空用pageContext转向到login.jsp,代码如下:(注:转向的方法与上面不同),输出信息,5.在CheckUser.jsp页面中用out输出Hello的方法,代码如下:,Hello);%,显示用户信息,6.在CheckUser.jsp页面中用session显示该用户的信息,代码如下:,session的创建时间:%,显示用户登录次数,7.在CheckUser.jsp页面中使用application对象显示用户登录次数,代码:,您是第个访问本站的客户,运行程序1,保存编辑完的网页后,启动tomcat服务。在浏览器的
3、地址栏中输入http:/localhost:8080/innerobject/login.jsp,页面效果如下:,运行程序2,使用JSP内置对象显示当前请求的容器信息,新建工程和setValue.jsp页面,1.新建一个“innerobject”工程2.新建和编写setValue.jsp:,values being set.,显示不同作用域,新建和编写Example1.jsp页面,for(int i=0;iPAGE);break;case PageContext.REQUEST_SCOPE:out.println(REQUEST);break;case PageContext.SESSION_
4、SCOPE:out.println(SESSION);break;case PageContext.APPLICATION_SCOPE:out.println(APPLICATION);break;,显示所有属性名称及其值,在Example1.jsp页面中添加显示所有属性名称及其值的代码:,while(attribNames.hasMoreElements()out.print(+(attribName=(String)attribNames.nextElement()+:);out.print(pageContext.getAttribute(attribName,scopesi);out.
5、println();,运行效果,保存编辑完的网页后,启动tomcat服务。在浏览器的地址栏中输入http:/localhost:8080/innerobject/setValue.jsp,总结,了解各个JSP内置对象掌握各个主要内置对象用法,介绍JSP内置对象,内置对象简介request对象:代表客户端请求对象response对象:封装了JSP响应,被发送到客户端以响应客户的请求pageContext对象:封装了JSP页面上下文session对象:保存每个用户信息,跟踪每个用户的操作状态application对象:为多个应用程序保存信息out对象:向客户端输出数据config对象:封装Serv
6、let配置信息page对象:JSP页面对象exception对象:运行时出现的异常,被调用的错误页面的结果,request对象,request对象是ServletRequest的一个实例,getServerPort():返回接收请求的端口号getServerName():返回接收请求的服务器的主机名getRemoteHost():返回发送请求的接口程序的完全限定的主机名getRemoteAddr():返回发送请求的接口程序的IP地址getProtocol():返回请求的协议名称getParameterValues(String name):返回作为字符串列举的指定参数的值 getParamet
7、erNames():返回本次请求的所有参数名字,结果是一个枚举实例getParameter(String name):返回客户端传递给服务器端的参数值getlnputStream():返回在请求体中读取二进制数据的输入流 getContentLength():返回请求实体数据的大小getCharacterEncoding():返回请求的字符编码方式getAttribute(String name):返回属性名称为name的属性值,response对象,response对象会包装成HttpServletResponse接口,JSP引擎会根据客户端的请求信息建立一个默认的response对象。它表
8、示JSP对浏览器请求的响应。response对象的方法允许JSP程序员设置HTTP头标、设置cookie和将会话信息编码至URL。,sendRedirect(String location):把响应发送到另一个位置进行处理setHeader(String name,String value):设定指定名字的HTTP文件头的值sendError(int):向客户端发送错误信息containsHeader(java.lang.String arg0):判断指定的HTTP文件头是否存在addHeader(String name,String value):添加Http文件头信息addCookie(C
9、ookie cook):添加一个Cookie对象,用来保存客户端的用户信息setContentType(String contentType):为应答设置内容类型,Out对象,Out对象主要向客户端输出数据,它可以是javax.servlet.jsp.JspWriter的一个实例。Out对象的范围是page。从java.io.Writer拓展而来的公共抽象类JspWriter效仿了java.io.BufferedWriter和java.Io.PrintWriter中的某些功能。PrintWriter使用Out对象向客户端发送输出流。,isAutoFlush():返回输出缓冲器是否自动刷新get
10、BufferSize():返回缓冲区的大小(以字节计算)getRemaining():返回缓冲区中未使用部分的大小(以字节计算)clearBuffer():清除缓冲区的内容,并把数据输出到客户端clear():清除缓冲区的内容,但不把数据输出到客户端newLine():输出一个换行符flush():输出缓冲区里的数据close():关闭输出流,session对象,session对象,实际上就是服务器与客户端之间的会话,removeValue(java.lang.String arg0):删除指定名字的参数值isNew():检查是否客户端参加了会话invalidate():删除session对象
11、getSessionContext():返回会话相连的上下文getId():返回会话标识符getCreationTime():返回会话创建的时间,application对象,application对象保存了一个应用系统中一些公用的数据。与session对象相比,application对象是所有客户共享的,而session对象则是每个客户专用的。服务器启动后,就会自动创建application对象,直到服务器关闭为止。,setAttribute(String name,Object object):设置某个application对象的某个属性值getServerInfo():获得当前版本的Ser
12、vlet编译器的信息getInitParameter(String name):返回application某个属性的值getAttributeNames():以Enumeration数据形式返回所有application对象的属性名称getAttribute(String name):返回对应名称的application对象的属性值,pageContext对象,PageContext对象被封装成javax.servlet.jsp.pageContext接口,它为JSP页面包装上下文。管理对属于JSP中特殊可见部分中已命名对象的访问。JSP页面里可以直接使用PageContext对象的句柄。PageContext对象的getXXX(),setXXX()和findXXX()方法可以用来根据不同的对象范围实现对这些对象的管理。,getRequest():返回触发页面处理的request请求对象getResponse():返回response页面响应对象getOut():返回页面的当前输出流getSession():返回与当前页面请求关联的会话getServletConfig():返回Servlet配置对象getServletContext():返回页面Servlet的运行环境getException():返回此页面的异常对象,