HowTo: Servlet-Konfiguration im Servlet 3.0 API
Das Servlet-API 3 hat mit einigen neuen Funktionen wie der asynchronen Verarbeitung und der vereinfachten Servlet/JSP-Entwicklung aufgewartet. Um ein Servlet zu deklarieren, muss der web.xml zunächst ein XML-Snippet eingefügt werden:
<servlet> <servlet-name>aServlet</servlet-name> <servlet-class> com.javaonly.servlets.AServlet </servlet-class> <init-param> <param-name> initParam</param-name> <param-value>initParamValue</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>aServlet</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping>
In der dritten Version des Servlet-API können die Annotationen direkt in der Servlet-Klasse erfolgen, wie nachfolgendes Beispiel zeigt:
@WebServlet(name="aServlet",(name="aServlet", urlPatterns={"/*"},={"/*"}, asyncSupported=false,=false, initParams={ @InitParam(name="={ @InitParam(name="initParam", value=", value="initParamValue")}))}) public class TestServlet extends javax.servlet.http.HttpServlet {public class TestServlet extends javax.servlet.http.HttpServlet { public void doGet(HttpServletRequest request,HttpServletResponse response){public void doGet(HttpServletRequest request,HttpServletResponse response){ //do something usefull//do something usefull }} //other methods go here//other methods go here } }
Wie obiger Code belegt, ist die gesamte Klasse mit @WebServlet-Annotation kommentiert und die XML-Tags, wie zum Beispiel init- und url-Parameter, werden damit zu Eigenschaften der @Webservlet-Annotation. Anschließend wird die annotiierte Klasse vom Servlet Container verarbeitet und das Servlet wird unter der deklarierten URL verfügar.
Hinterlasse einen Kommentar