博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
转载 Servlet3 的 @WebServlet http://www.cnblogs.com/luxh/archive/2012/06/06/2537458.html
阅读量:6383 次
发布时间:2019-06-23

本文共 3049 字,大约阅读时间需要 10 分钟。

我使用的开发环境:MyEclipse10+Tomcat7+JDK6。

  开发Servlet3的程序需要一定的环境支持。Servlet3是Java EE6规范的一部分,MyEclipse10和Tomcat7都提供了对Java EE6规范的支持。

  Tomcat需要Tomcat7才支持Java EE6,Tomcat7需要使用JDK6。

  如果使用的MyEclipse的版本较低,没有提供Java EE6的支持,可以到Oracle官方网站下载JavaEE6的SDK进行安装,或者从Tomcat7的解压目录下的lib文件夹中把所有jar文件引用到我们的项目路径下。(例如:先建一个Java EE5的web项目,然后把Tomcat7的解压目录下的lib文件夹中的所有jar引入到项目中,再删除Java EE5的库引用,最后从Tomcat7的解压目录下的conf文件夹下把web.xml模板拷贝到项目,替换掉原来的web.xml)。

  Servlet3.0提供了注解(annotation),使得不再需要在web.xml文件中进行Servlet的部署描述,简化开发流程。

  1、新建一个Web Project,直接选择Java EE6.0。

  2、看一下项目包视图。

  3、Java EE6的库文件

  4、web.xml文件

1
2
3
4
5
6
7
8
<?
xml
version="1.0" encoding="UTF-8"?>
<
web-app
version="3.0"
    
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">
   
</
web-app
>

  注意version="3.0"和http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd。

  5、新建一个Servlet。写上Servlet的Name,然后Next。

  6、不需要在web.xml文件中生成Servlet的相关信息。Finish。

  7、这样建好一个Servlet后,在web.xml文件中没有任何关于这个Servlet的描述信息。

 

复制代码
复制代码

 

 

 

  8、使用注解描述Servlet。 

 

复制代码
package com.cndatacom.servlet;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * 使用注解描述Servlet * @author Luxh *//** * 注解WebServlet用来描述一个Servlet * 属性name描述Servlet的名字,可选 * 属性urlPatterns定义访问的URL,或者使用属性value定义访问的URL.(定义访问的URL是必选属性) */@WebServlet(name="AnnotationServlet",urlPatterns="/AnnotationServlet")public class AnnotationServlet extends HttpServlet {    public void doGet(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {                response.setCharacterEncoding("utf-8");        response.setContentType("text/html;charset=utf-8");        PrintWriter out = response.getWriter();        out.println("");        out.println("");        out.println("      ");        out.println("      A Servlet");        out.println("      
"); out.println("   "); out.println(" "); out.println(" Hello AnnotationServlet."); out.println(" "); out.println(""); out.flush(); out.close(); }}
复制代码

 

 

 

  9、把项目发布到Tomcat7,启动Tomcat7。在浏览器访问:

  完成了一个使用注解描述的Servlet程序开发。


  使用@WebServlet将一个继承于javax.servlet.http.HttpServlet的类定义为Servlet组件。

  @WebServlet有很多的属性:

  asyncSupported:声明Servlet是否支持异步操作模式。

  description:    Servlet的描述。

  displayName:     Servlet的显示名称。

  initParams:        Servlet的init参数。

  name:        Servlet的名称。

  urlPatterns:    Servlet的访问URL。

  value:          Servlet的访问URL。

  Servlet的访问URL是Servlet的必选属性,可以选择使用urlPatterns或者value定义。

  像上面的AnnotationServlet可以描述成@WebServlet(name="AnnotationServlet",value="/AnnotationServlet")。

  也定义多个URL访问:

  如@WebServlet(name="AnnotationServlet",urlPatterns={"/AnnotationServlet","/AnnotationServlet2"})

  或者@WebServlet(name="AnnotationServlet",value={"/AnnotationServlet","/AnnotationServlet2"})

 

转载地址:http://twzha.baihongyu.com/

你可能感兴趣的文章
ASP.NET MVC 中将数据从View传递到控制器中的三种方法(表单数据绑定)
查看>>
SpringMVC+easyUI CRUD 添加数据C
查看>>
本地CS的导出xls代码段
查看>>
C++数组和指针
查看>>
恭贺自己itpub和csdn双双获得专家博客称号
查看>>
xml 转map dom4j
查看>>
Vitamio视频播放器
查看>>
Java编程的逻辑 (66) - 理解synchronized
查看>>
[置顶] android 自定义ListView实现动画特效
查看>>
机器学习A-Z~Logistic Regression
查看>>
聊聊flink的NetworkEnvironmentConfiguration
查看>>
【Go】strings.Replace 与 bytes.Replace 调优
查看>>
RSA签名的PSS模式
查看>>
c# 注销 代码
查看>>
ubuntu 安装-apache2-trac-ldap【验证】-svn-mysql
查看>>
Nginx 安装
查看>>
php GD库
查看>>
项目管理
查看>>
隐私政策
查看>>
二分搜索树
查看>>