当前位置: 首页 > news >正文

郑州网站建设幸巴网址查询

郑州网站建设幸巴,网址查询,网站开发岗位群,java最新网站Servlet3.0规范的新特性主要是为了3个目的:1.简化开发2.便于布署3.支持Web2.0原则为了简化开发流程,Servlet3.0引入了注解(annotation),这使得web布署描述符web.xml不在是必须的选择。Pluggability可插入性当使用任何第…
Servlet3.0规范的新特性主要是为了3个目的:
1.简化开发
2.便于布署
3.支持Web2.0原则
为了简化开发流程,Servlet3.0引入了注解(annotation),这使得web布署描述符web.xml不在是必须的选择。

Pluggability可插入性
当使用任何第三方的框架,如Struts,JSF或Spring,我们都需要在web.xml中添加对应的Servlet的入口。这使得web描述符笨重而难以维护。Servlet3.0的新的可插入特性使得web应用程序模块化而易于维护。通过webfragment实现的可插入性减轻了开发人员的负担,不需要再在web.xml中配置很多的Servlet入口。


Asynchronous Processing 异步处理
另外一个显著的改变就是Servlet3.0支持异步处理,这对AJAX应用程序非常有用。当一个Servlet创建一个线程来创建某些请求的时候,如查询数据库或消息连接,这个线程要等待直到获得所需要的资源才能够执行其他的操作。异步处理通过运行线程执行其他的操作来避免了这种阻塞。


Apart from the features mentioned here, several other enhancementshave been made to the existing API. The sections towards the end ofthe article will explore these features one by one in detail.
除了这些新特性之外, Servlet3.0对已有的API也做了一些改进,在本文的最后我们会做介绍。

Annotations in Servlet Servlet中使用注解
Servlet3.0的一个主要的改变就是支持注解。使用注解来定义Servlet和filter使得我们不用在web.xml中定义相应的入口。

@WebServlet
@WebServlet用来定义web应用程序中的一个Servlet。这个注解可以应用于继承了HttpServlet。这个注解有多个属性,例如name,urlPattern,initParams,我们可以使用者的属性来定义Servlet的行为。urlPattern属性是必须指定的。
例如我们可以象下面的例子这样定义:

@WebServlet(name = "GetQuoteServlet", urlPatterns = {"/getquote"}) public class GetQuoteServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); try { String symbol = request.getParameter("symbol"); out.println("<h1>Stock Priceis</h1>" +StockQuoteBean.getPrice(symbol); } finally { out.close(); } } } public class StockQuoteBean { private StockQuoteServiceEntity serviceEntity = newStockQuoteServiceEntity(); public double getPrice(String symbol) { if(symbol !=null ) { return serviceEntity.getPrice(symbol); } else { return 0.0; } } }




在上面的例子中,一个Servlet只对应了一个urlPattern。实际上一个Servlet可以对应多个urlPattern,我们可以这样定义:

@WebServlet(name = "GetQuoteServlet", urlPatterns = {"/getquote","/stockquote"} ) public class GetQuoteServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); try { String symbol = request.getParameter("symbol"); out.println("<h1>Stock Priceis</h1>" +StockQuoteBean.getPrice(symbol); } finally { out.close(); } } } @WebFilter 我们可以使用@WebFilter注解来定义filter。这个注解可以被应用在实现了javax.servlet.Filter接口的类上。同样的,urlPattern属性是必须指定的。下面就是一个例子。 @WebFilter(filterName = "AuthenticateFilter", urlPatterns ={"/stock.jsp", "/getquote"}) public class AuthenticateFilter implements Filter { public void doFilter(ServletRequest request, ServletResponseresponse, FilterChain chain) throws IOException, ServletException { String username = ((HttpServletRequest)request).getParameter("uname"); String password = ((HttpServletRequest)request).getParameter("password"); if (username == null || password == null) { ((HttpServletResponse) response).sendRedirect("index.jsp"); } if (username.equals("admin") && password.equals("admin")){ chain.doFilter(request, response); } else { ((HttpServletResponse) response).sendRedirect("index.jsp"); } } public void destroy() { } public void init(FilterConfig filterConfig) { } }


http://www.lbrq.cn/news/2763361.html

相关文章:

  • 外贸用什么平台自建站较好长沙网站推广排名优化
  • 可以用足球做的游戏视频网站nba最新新闻消息
  • 域名绑定网站百度客服怎么联系
  • 大连网站开发选领超科技宁德市人力资源和社会保障局
  • 手机网站制作代码与web有什么不同竞价托管代运营
  • 怎么做套版网站代运营一个月多少钱
  • 福州外贸建站江苏企业网站建设
  • 网站建设深圳亿联时代太原seo快速排名
  • 制作一个购物网站需要多少钱今天有哪些新闻
  • 手机投资理财网站建设网络营销的优势与不足
  • 消防网站建设的风格找客户的软件有哪些
  • 小门户网站模版百度网盘搜索入口
  • 互联网广告推广是做什么的合肥seo排名优化公司
  • 中山商城型网站建设关键词上首页软件
  • 泉州做网站河南智能seo快速排名软件
  • 网站自定义title西安seo霸屏
  • 国家信息企业公示系统全国怎么给网站做优化
  • 分销是什么意思资源网站优化排名优化
  • 柳州住建局官网百度推广优化方案
  • 大学生网站建设策划书范文百度广告怎么投放
  • php怎么做多个网站安卓排名优化
  • 广州网站建设哪家比较好立即优化在哪里
  • 温州网站建设价格荆州seo推广
  • 太原市住房和城乡建设局的网站曼联目前积分榜
  • 政府门户网站建设的意义东营网站建设
  • EDI许可证需要的网站怎么做上海网站建设费用
  • 厦门高端网站建设广州今天新闻
  • 汕头网站优化系统今日热点头条
  • 网站改版 更换域名网络运营推广是做什么的
  • 金华网站制作教育培训机构推荐
  • Python day48.
  • 块体不锈钢上的光栅耦合表面等离子体共振的复现
  • 前端项目练习-王者荣耀竞赛可视化大屏 -Vue纯前端静态页面项目
  • 力扣438:找到字符串中所有的字母异位词
  • 《Vuejs设计与实现》第 14 章(内建组件和模块)
  • 【FreeRTOS】队列集