Обновите до Java EE 6 / Servlet 3.0, и вы сможете зарегистрировать сервлет с помощью аннотации @WebServlet
.
package com.example;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
@WebServlet(urlPatterns={"/myServlet/*"})
public class MyServlet extends HttpServlet {
// ...
}
Нет необходимости в web.xml
больше.Вышесказанное делает в основном то же самое, что и следующее:
<servlet>
<servlet-name>myServlet</servlet-name>
<servlet-class>com.example.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>myServlet</servlet-name>
<url-pattern>/myServlet/*</url-pattern>
</servlet-mapping>
На данный момент вы можете выбрать из каждого Glassfish v3 и Tomcat 7 в качестве реализаций Servlet 3.0.1015 *
До Servlet 3.0 лучше всего делать ставку на фронт-контроллер.В web.xml
имеется один сервлет, который делегирует запросы / действия объектам домена на основе параметров запроса и / или pathinfo.Это также используется в средней структуре MVC.