打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Servlet3.0

  我使用的开发环境: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文件



<?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的描述信息。


 



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


 


 


 


  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("<!DOCTYPE HTML>");        out.println("<HTML>");        out.println("      <HEAD>");        out.println("      <TITLE>A Servlet</TITLE>");        out.println("      <meta http-equiv=\"content-type\" " + "content=\"text/html; charset=utf-8\">");        out.println("   </HEAD>");        out.println("       <BODY>");        out.println("             Hello AnnotationServlet.");        out.println("     </BODY>");        out.println("</HTML>");        out.flush();        out.close();    }}


 


 


 


  9、把项目发布到Tomcat7,启动Tomcat7。在浏览器访问:http://localhost:8080/Servlet3/AnnotationServlet



  完成了一个使用注解描述的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"})


 


  


 


  

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
WebSocket实现简单的web聊天室
浅析Struts1和Struts2的Action线程安全问题
[Servlet]如何编写一个Servlet
tomcat启动报错too low setting for
Servlet 3.0 新特性详解
SOAP净化有线协议(二):Apache SOAP介绍
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服