读书人

2、Servlet 3.0の6つのEase of De

发布时间: 2012-11-09 10:18:47 作者: rapoo

二、Servlet 3.0の6つのEase of Development

Servlet 3.0では、EoDとして「Annotation based configuration」を新しく定しました。アノテションを利用することでServletのがになります。

Servlet 3.0で入した「Annotation based configuration」を利用すると、「@WebServlet」というアノテションを付加するだけでOKです。

?

@WebServlet(name="WebServletTest",urlPatterns={"/test"})   //web.xmlに入必要なくになりました。public class WebServletTest extends HttpServlet {     private static final long serialVersionUID = 1L;     @Override    protected void doGet(HttpServletRequest req, HttpServletResponse resp)            throws ServletException, IOException {        resp.getWriter().print("HELLO!");    }}

?

初期化パラメタを使用する合でも、来なら以下のようにweb.xmlのServletマッピングに定を追加していました。

?

@WebServlet(name="WebServletTest",urlPatterns={"/test"},        initParams={@WebInitParam(name="name",value="HELLO!!")})public class WebServletTest extends HttpServlet {     private static final long serialVersionUID = 1L;     @Override    protected void doGet(HttpServletRequest req, HttpServletResponse resp)            throws ServletException, IOException {        resp.getWriter().print(getInitParameter("name"));            }}

?

Filterを使用する合は「@WebFilter」を利用するだけでOKです。

?

@WebFilter(filterName="WebFilterTest", urlPatterns="/test")public class WebFilterTest implements Filter {     @Override    public void destroy() {        //TODO    }     @Override    public void doFilter(ServletRequest req, ServletResponse res,            FilterChain chain) throws IOException, ServletException {        // TODO        chain.doFilter(req, res);        // TODO    }     @Override    public void init(FilterConfig config) throws ServletException {        //TODO    }}
?

Listenerもweb.xmlにマッピングしなくても、@WebListenerを以下のServlet仕で定されたListenerのインタフェイスを装したクラスにアノテションするだけで利用できます。

?

@WebListener()public class TestServletContextListener implements ServletContextListener {     @Override    public void contextDestroyed(ServletContextEvent event) {        // TODO    }     @Override    public void contextInitialized(ServletContextEvent event) {        // TODO    }}
?

?

读书人网 >编程

热点推荐