Servlet学习笔记

  1. 生命周期

    1)constructor:第一次请求时检查是否已经有servlet实例,若没有则调用构造器创建,并用init初始化,如果有,则直接调用service方法

    2)init:

    3)service(*n)web应用程序使用中多次请求只会调用service方法,即使用同一个servlet实例

    4)destroy:web应用程序时

  2. 配置和映射

<servlet>
    <servlet-name>RegisterName</servlet-name>
    <servlet-class>package.whole_class's path</servlet-class>
</servlet>
<servlet-mapping><!-- 同一个servletName可以有多个servletMapping标签 -->
    <servlet-name>RegisterName</servlet-name>
    <url-pattern>/url</url-pattern>
</servlet-mapping>

<url-pattern></url-pattern>标签里,"/"代表根目录,在浏览器访问的时候相当于地址栏里的“http://localhost:port/webApplicationName/”

可以使用通配符“*”的两种情况

1)以文件扩展名结尾,如

<url-pattern>*.html</url-pattern>

2)以“/”开头并且以“/*”结尾,如

<url-pattern>/DirectoryName/*</url-pattern>

注:以“/”开头并以文件扩展名结尾是错误的,如

<url-pattern>/DirectoryName/*.html</url-pattern><!--会报错,找不到资源 -->