读书人

Servlet3.0新特性-引语

发布时间: 2012-08-29 08:40:14 作者: rapoo

Servlet3.0新特性---注解


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"?>

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 {@Overridepublic 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();}}


?参数也通过注解方式传入,有什么意义呢?声明成常量直接用好了;另外通过这种方式注解@WebInitParam(name="paraName",value="paraValue"),servlet里,死活拿不到,不知道为啥?

?通过注解,web.xml不需要配置servlet,实现了零配置

读书人网 >编程

热点推荐