1.servlet3.0作为J2EE 6规范一部分,随j2EE6一起发布,并且tomcat7已经完全支持。
2.tomcat7(tomcat7 需要jdk1.6支持)已经完全支持servlet3.0,
3.web项目中添加对servlet3.0支持,
将E:\apache-tomcat-7.0.26\lib下的jar包加入到web项目
classpath中,可以不不加到web项目中WEB-INF/lib,保证编译时可用就行,部署到tomcat中,tomcat
会使用自己servlet3.0支持的jar.完成后,将eclipse默认生成servlet2.5支持jar移除
4.修改WebRoot\WEB-INF\web.xml dtd文件,使其支持servlet3.0
将tomcat7/conf/web.xml覆盖即可,删除不相关的部分,修改后的web.xml(主要是dtd)内容为:
<?xml version="1.0" encoding="UTF-8"?>
- <SPAN style="FONT-SIZE: small"><web-app xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
- http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
- version="3.0">
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- </welcome-file-list>
- </web-app></SPAN>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
5.5.编写第一个servlet3.0的servlet,和之前差不了,就是用注解
package com.darren.servlet;
- <SPAN style="FONT-SIZE: small">import java.io.IOException;
- import java.io.PrintWriter;
- import javax.servlet.ServletConfig;
- import javax.servlet.ServletException;
- import javax.servlet.annotation.WebInitParam;
- import javax.servlet.annotation.WebServlet;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- @WebServlet(name="FirstServlet",urlPatterns={"/firstServlet","/MyServlet"},initParams={@WebInitParam(name="hello",value="world init....")})
- @WebInitParam(name="paraName",value="paraValue")
- public class FirstServlet extends HttpServlet {
- @Override
- public void init(ServletConfig config) throws ServletException {
- System.out.println(config.getInitParameter("paraName"));
- System.out.println(config.getInitParameter("hello"));
- //super.init(config);
- }
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- PrintWriter out = response.getWriter();
- out.println("hello,world...");
- out.close();
- }
- }</SPAN>