Power point 制作 耿祥义 张跃平 配合 例子源代码一起使用
第 4 章 内 置 对 象 有些成员变量不用声明就可以在 JSP 页 面的脚本( Java 程序片和 Java 表达式) 中使用,这就是所谓的内置对象。 内置对象有: resquest 、 response 、 session 、 application 、 out 。
2. request 对象 1. 内置对象 request 对象是实现了 ServletRequest 接口类的一个实例. 2. Tomcat 服务器将用户的请求封装在内 置对象 request 中,该对象调用相应的方 法可以获取封装的信息.
3. request 对象的常用方法 getProtocol() :获取请求使用的通信协议,如 http/1.1 等。 getServletPath() :获取请求的 JSP 页面所在的目录。 getContentLength() :获取 HTTP 请求的长度。 getMethod() :获取表单提交信息的方式,如 POST 或 GET 。 getHeader(String s) :获取请求中头的值。 getHeaderNames() :获取头名字的一个枚举。 getHeaders(String s) :获取头的全部值的一个枚举。 getRemoteAddr() :获取客户的 IP 地址。 getRemoteHost() :获取客户机的名称(如果获取不到,就获取 IP 地址)。 getServerName() :获取服务器的名称。 getServerPort() :获取服务器的端口号。 getParameterNames() :获取表单提交的信息体部分中 name 参数值的一个枚举
4. response 对象 response 对象对客户的请求做出响应, 向客户端发送数据 response 对象调用 setContentType(String s) 方法来动 态改变 contentType 的属性值: response 对象可以使用如下方法: addHeader(String head,String value); setHeader(String head,String value) 动态添加新的响应头和头的值
5. session 对象 内置对象 session 由 Tomcat 服务器负责创建, session 是实现了 HttpSession 接口类的一个实例. session 对象被分配了一个 String 类型的 ID , Tomcat 服务器将 ID 发送到客户端,存放在客户的 Cookie 中。 同一用户在同一 Web 服务目录中的各个页面的 session 是相同的. 不同用户的 session 对象互不相同,具有不同的 ID
6. session 对象存储数据 (1) public void setAttribute(String key, Object obj) session 对象可以调用该方法将参数 Object 指定的对象 obj 添加到 session 对象 中,并为添加的对象指定了一个索引关键字,如果添加的两个对象的关 键字相同,则先前添加的对象被清除。 ( 2 ) public Object getAttibute(String key) 获取 session 对象含有的关键字是 key 的对象。由于任何对象都可以添加到 session 对象中,因此用该方法取回对象时,应强制转化为原来的类型。 ( 3 ) public Enumeration getAttributeNames() session 对象调用该方法产生一个枚举对象,该枚举对象使用 nextElemets() 遍历 session 中的各个对象所对应的关键字。 ( 4 ) public void removeAttribute(String name) session 对象调用该方法移掉关键字 key 对应的对象
7. out 对象 内置对象 out 对象是 JspWriterout 类的一个实例 out 对象可调用如下的方法用于各种数据的输 出,例如: out.print(Boolean) , out.println(boolean 用于输出一个布尔值 out.print(char) , out.println(char) 输出一个字符 out.print(double) , out.println(double) 输出一个双精度的浮点数
8. application 对象 任何客户在所访问的服务目录的各个页面时, application 对象都 是同一个. application 对象的常用方法 ( 1 ) public void setAttribute(String key, Object obj) application 对象可以调用该方法将参数 Object 指定的对象 obj 添加到 application 对象中,并为添加 的对象指定了一个索引关键字,如果添加的两个对象的关键字相同,则先前添加对象被清除。 ( 2 ) public Object getAttibue(String key) 获取 application 对象含有的关键字是 key 的对象。由于任何对象都可以添加到 application 对象中, 因此用该方法取回对象时,应强制转化为原来的类型。 ( 3 ) public Enumeration getAttributeNames() application 对象调用该方法产生一个枚举对象,该枚举对象使用 nextElemets() 遍历 application 中 的各个对象所对应的关键字。 ( 4 ) public void removeAttribue(String key) 从当前 application 对象中删除关键字是 key 的对象。
10. Tag 标记的使用 JSP 页面必须使用 指令标 记引入标记库,只有这样, JSP 页 面才可以使用 Tag 标记调用相应的 Tag 文件。 指令的格式如下: Tag 文件存放到 Tomcat 服务器指定 的目录中,即存放到 “ Web 服务目 录 \WEB-INF\tags ” 中。其中的 WEB-INF 和 tags 都是固定的子目录 名称,而 tags 下的子目录名字可由 用户给定。
11. 向 Tag 文件传值 (1) Tag 文件充当着可复用代码的角 色,如果一个 Tag 文件能允许使用它的 JSP 页面向该 Tag 文件传递字符串数据, 就使得 Tag 文件的功能更为强大。 (2) 在 Tag 文件中通过使用 attribute 指令, 可以动态地向该 Tag 文件传递需要的字 符串数据。 attribute 指令的格式如下: attribute name= “ 字符串变量名 ” required="true"|"false"%>