枣庄网站优化,做网站有前景吗,建网站做代理ip,郴州必去三个景点servlet3.0新特性随着JEE6规范上市#xff0c;在企业应用程序领域中如何开发应用程序方面发生了一些重大变化。 在本文中#xff0c;我将介绍有关Web应用程序开发的一些更改。 首先#xff0c;请告别web.xml部署描述符#xff08;至少是其中的一部分#xff09;。 好吧在企业应用程序领域中如何开发应用程序方面发生了一些重大变化。 在本文中我将介绍有关Web应用程序开发的一些更改。 首先请告别web.xml部署描述符至少是其中的一部分。 好吧它不是不赞成使用而是随着注释的使用及其用法的增加新规范允许我们使用注释来定义我们的配置尽管诸如欢迎文件列表上下文参数等的某些内容仍然需要去做。在您的web.xml中。 可用的注释有 WebServlet WebFilter WebInitParam WebListener MultipartConfig 在本文中我将检查WebServlet和WebFilter批注。 让我们看看在web.xml时代通常如何映射servlet。 servletservlet-namemyservlet/servlet-nameservlet-classcom.example.MyServlet/servlet-class/servletservlet-mappingservlet-namemyservlet/servlet-nameurl-pattern/hello/url-pattern/servlet-mapping 使用Servlet 3.0规范现在配置Servlet就像注释扩展HttpServlet的类一样容易。 让我们看一下它的样子。 WebServlet(/student)
public class StudentServlet extends HttpServlet{/*** */private static final long serialVersionUID 2276157893425171437L;Overrideprotected void doPost(HttpServletRequest arg0, HttpServletResponse arg1)throws ServletException, IOException {StringBuilder response new StringBuilder(500);response.append(htmlbody).append(Registered Student : ).append(arg0.getParameter(txtName)).append(/body/html);arg1.getOutputStream().write(response.toString().getBytes());arg1.getOutputStream().flush();arg1.getOutputStream().close();}
} 您只需要WebServlet批注。 为了使它起作用该类应驻留在WEB-INF / classes文件夹中或驻留在WEB-INF / lib文件夹中的jar中。 接下来让我们看看如何配置带有注释的过滤器。 package com.blog.example.servlettest;import java.io.IOException;import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;WebFilter(/student)
public class StudentFilter implements Filter{Overridepublic void destroy() {}Overridepublic void doFilter(ServletRequest arg0, ServletResponse arg1,FilterChain arg2) throws IOException, ServletException {if(arg0.getParameter(txtName)null || arg0.getParameter(txtName).isEmpty()){arg1.getWriter().append(Invalid name supplied);arg1.getWriter().flush();arg1.getWriter().close(); }else{arg2.doFilter(arg0, arg1);}}Overridepublic void init(FilterConfig arg0) throws ServletException {// TODO Auto-generated method stub}} 再次非常容易。 仅作为注释即可通知它为过滤器。 注意这里我们实现了Filter接口。 该值或urlPatterns应该可用。 根据规范同时使用这两种方法都是非法的。 在接下来的几周中我将介绍JEE6提供的其他新注释并结合使用它们的完整示例进行总结。 JEE6是否取代Spring框架本身并不是一个问题但是我相信我们将会看到两者之间的激烈竞争。 注释vs xml的争论已或多或少地解决了每个人都倾向于拥有自己的立场。 我相信这两个领域的一点点都会对应用程序有益。 您可以下载并运行我已在此处上传的示例示例。 如果您使用的是JBoss-AS7 则只需在独立模式下运行应用程序服务器然后执行mvn软件包jboss-asdeploy并将浏览器指向http// localhost{port} /servlet3.0 。 今天就是这样。 感谢您的阅读如果您有任何意见或改进建议请留下评论。 祝你有美好的一天 参考在My My Journey Through IT博客上从我们的JCG合作伙伴 Dinuka Arseculeratne中了解Servlet 3.0的新增功能 。 翻译自: https://www.javacodegeeks.com/2012/12/checking-out-what-is-new-with-servlet-3-0.htmlservlet3.0新特性