一、会话跟踪技术
HTTP信息
隐藏字段:<input
type=”hidden” name=”somename” value=”somevalue”>
URL重写:<a href=”XX.jsp?name=XX&item=XX”>再通过getParameter(XX)得到
Cooike
Session:session.setAtrribute(xx,xx)
二、servlet的生命周期
装载、实例化、初始化init()、实例的请求doXXX()、销毁distoryI()
三、servlet相关配置
Javax.servlet.ServletConfig接口代表了Servlet的配置,包括servlet的名字、初始化参数、上下文
在web.xml中的<servlet></servlet>之间的内容就是servlet的配置
<init-param>
<param-name>MM</param-name>
<param-value>NN</param-value>
</init-param>
在servlet中直接使用getInitParameter(“MM”)就可以得到NN
Servlet的映射配置
<servlet-mapping>
<servlet-name>Conter</servlet-name>
<url-pattern>/count/*</url-pattern>
</servlet-mapping>
这种情况下当地址栏里输入http://127.0.0.1:8080/count/gaex不管最后是什么都能跳到servlet上
四、监听
监听是对servletContext的属性创建、删除的监听
对监听的配置在web.xml中,必须在所有的servlet元素之前
五、web过滤器
客户端 HTTP请求àFilter à doFilter àFilter à目标组件
要开发一个Filter必须直接或间接的实现Filter接口
Filter接口中的方法有:
init()获得FilterConfig对象
destroy()销毁这个过滤器
doFilter()进行过滤处理
如果有多个过滤器在doFilter()中就要加上chain.doFilter(srequest,sresponse)把处理权发给下个处理器,如果没有下一个过滤器就把请求发送给目标
在web.xml中要对Filter进行配置
<filter>
<filter-name>xx</filter-name>
<filter-class>xxxxxxx</filter>
<init-param>
<param-name></param-name>
<param-value></param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>xx</filter-name>
<url-pattern>/fds/*</url-pattern>
</filter-mapping>
注意:一个Filter可以有多个Filter-mapping,就是对多个web组件过滤;一个组件也可以有多个Filter
六、JSP错误页面的声明
编程中指定错误页面:
这两点是必须的:
在害怕出错的JSP页面上指定<%@page errorPage=”error.jsp”%>
在指定的处理错误的页面上<%@page
... isErrorPage=”true”%>
对于应用服务器抛出的异常:(web.xml)
<error-page>
<error-code>404</error-code>
<location>/Error.html</location>
</error-page>
七、JSTL
1)<c:out
value=”” > default </c:out>
Value是要输出的内容,default当value为null时,输出的内容
2)<c:if
test=”” [var=”varName”]> body </c:if>
Test是布尔型表达式
3)<c:choose> <when> and
<otherwise> </c:choose>
4) <c:forEach var=”” items=”” begin=”” end=””
step=””> ……</c:forEach>
var迭代参数的名字,items要迭代的集合
八、关于EL表达式
当遇到EL表达式后,容器将在page、request、session、application中去查询这个对象