Java Web学习笔记(六)

来源:互联网 发布:java linux 时间戳 编辑:程序博客网 时间:2024/06/02 20:18
1.过滤器(Filter):

1) Servlet过滤器是在Java  Servlet规范2.3中定义的,它能够对Servlet容器的请求和响应对象进行检查和修改。 

2) Servlet过滤器本身并不生成请求和响应对象,它只提供过滤作用。 

3) Servlet过滤器能够在Servlet被调用之前检查Request对象,修改Request Header和Request内容; 

4) 在Servlet被调用之后检查Response对象,修改Response Header和Response内容。Servlet过滤器负责过滤的Web组件可以是Servlet、JSP或HTML文件。  

2.过滤器就像IO里面的过滤流和节点流一样。所有的过滤器都必须继承Filter接口,这个方法由3个过滤器必须实现的方法:
     -init();
     -doFilter();
     -destroy();




3.过滤器的过滤过程:



4.每个Filter都要在web.xml文件中添加一个<filter></filter>元素,里面的元素和配置Servlet元素一样。 






5.监听器(Listener):实现了观察者模式,一个监听器会在某个主题触发的时候被调用。


6.自己编写的监听器类要在web.xml文件中写上对应的<listener>元素。

7.在对ServletContext启动和销毁的监听要实现ServletContextListener接口,对Application对象的属性更改的监听要实现ServletContextAttributeListener接口。


8.对于Session的监听要实现HttpSessionListener。Session中属性的监听对应的接口是HttpSessionAttributeListener


9.EL(Expression Language表达式语言):

     1)${ param.参数名 } 可以取出表单中传进来的参数

     2)${ requestScope.AttributeName} 可以取出响应中的属性

     3)${ sessionScope.AttributeName } 可以取出Session中的属性

10.客户号JSP标签:


11.Servlet容器变异JSP网页时,如果遇到自定义标签,就会调用这个标签的处理类。标签处理类必须扩展以下两个类中的一个:
     -javax.servlet.jsp.tagext.TagSupport
     -javax.servlet.jsp.tagext.BodyTagSupport


12.标签的处理类必须实现doStartTag()或者doEndTag()方法。

13.标签库的描述文件:xxx.tld , 标签库描述文件本身是一个XML文件  

1)配置好标签描述文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">

<taglib>

     <tlib-version>1.0</tlib-version>
     <jsp-version>1.1</jsp-version>
     <short-name>myTag</short-name>
     <uri>标签库的名字</uri>

     <tag>
          <name>标签的名字</name>
          <tag-class>标签库处理类</tag-class>
          <body-content>empty</body-content>
     </tag>     

</taglib>


2)在JSP中引入标签:
      <%@ taglib uri="标签库的名字" prefix="前缀" %>

3)在JSP中使用标签库:
      <前缀:标签名>






原创粉丝点击