1. Servlet的标注信息:
1) 在Servlet3.0中提供了标注功能,以告知Web容器Servlet会提供哪些服务及一些额外的信息;
2) 标注采用Java的标注语法@打头,完整的标注为@WebServlet(...),后面不需要加分号;
3) 可标注的内容:单参数默认指定URL模式,例如@WebServlet("/hello.view"),下面介绍多参数的语法
!!以下所有参数都具有默认值,这里只介绍三个最常用的参数
i. name:为Servlet注册一个别名给Web容器,默认值是Servlet的完整包路径名,由于包路径名过长可以去一个方便项目管理的简短的名字,并且要见名知意;
ii. urlPatterns:URL模式
iii. loadOnStartup:启动参数,Servlet的启动过程分为三步,启动(即Run)-> 实例化 -> 初始化 -> 开始服务,而通常在默认值(0)情况下,Servlet启动后并不会立即实例化,而是等待客户端第一次请求它时才会实例化并初始化,这就意味着第一次请求会花费很多额外的时间,如果希望启动Servlet并立马完成初始化就要为该参数赋予一个大于0的值,而数字的大小则表示优先级,数字越小优先级越高,即越早启动,如果优先级相同,则具体的顺序时Web容器厂商的具体算法决定;
iv. 标注的例子,注意语法:
@WebServlet(
name="Hello" // 不用花括号
urlPatterns={"/hello.view"} // 一定要加一个花括号
loadOnStartup=1
)
2. web.xml——部署描述文件:
1) 上面的Servlet标注只适用于单个Servlet的自我标注,但是如果工程中有大量的Servlet需要统一部署则采用单个自我描述的方式可能不方便管理,想要查看整个部署情况不能用一个俯视的视角全局查看,我们很像将所有的Servlet的部署信息都写在一个文件里面,这个文件就是web.xml,叫做DD,即Deployment Descriptor,即部署描述文件;
2) 该文件必须放在工程目录的WebContent/WEB-INF目录下,可以在Eclipse中右击该节点N