2016-07-02 4 views
-2

Ich bin sehr neu zu Java-Servlet.Ich bin sehr verwirrt darüber, warum wir Servlet-Mapping in web.xml.Ich habe ein Projekt, in dem ich zwei servlets.and verwendet haben, wenn Ich benutze Servlet Mapping nicht dann auch Projekt ordnungsgemäß ausgeführt .. Dann warum Servlet Mapping verwendet wird .. ???Java Servlet Mapping-Konzept in web.xml Datei

+0

Wie helfen werden Sie Ihr Servlet definieren? Zeigen Sie Code in der Frage, damit wir einen kleinen Kontext haben. – Andreas

+2

Mögliches Duplikat von [Brauche ich web.xml wirklich für eine Servlet-basierte Java-Webanwendung?] (Http://stackoverflow.com/questions/30259153/do-i-really-need-web-xml-for-a- Servlet-basierte-Java-Web-Anwendung) – nlloyd

+0

Ich habe zwei servlets.one für die Anmeldung und eine für die Abmeldung.Und ich habe web.xml Datei nicht bearbeitet.dann auch Programm ordnungsgemäß ausgeführt.Warum wir Servlet-Mapping verwenden? – kushagra

Antwort

0

Servlets sollten mit Servlet-Container registriert werden. Dazu sollten Sie Einträge im Web-Deployment-Deskriptor web.xml hinzufügen. Es befindet sich im Verzeichnis WEB-INF der Webanwendung. Sie haben zwei Möglichkeiten: Entweder Sie verwenden ein annotationsbasiertes Servlet, bei dem XMl nicht erforderlich ist, und einmal ohne Annotation, wobei web.xml bei der Servlet-Zuordnung erforderlich ist. die Abbildung auf web.xml wie

<servlet> 
<servlet-name>Welcome</servlet-name>  
<servlet-class>HelloWorld</servlet-class> 
</servlet> 
<servlet-mapping>  
<servlet-name>Welcome</servlet-name>  
<url-pattern>/HelloWorld.do</url-pattern> 
</servlet-mapping> 
  • Angenommen auf Submit jede Form Daten, die Sie anrufen möchten, Hello World Servlet dann für das Servlet wir eine eindeutige URL haben definiert ist, konfigurieren, so wie /HelloWorld.do definiert ist, wenn Sie auf Senden der Formulardaten es prepspective Servlet Aber URL geladen werden sollen wie /HelloWorld.do
  • angezeigt, wenn Sie HelloServlet von Formulardaten dann von Client-Code/Front-End-Code Anruf action ="/HelloWorld.do" voller Tag nennen wollen, ist <form action="action=/HelloWorld.do" method="post">
  • können Sie Servlet aufrufen, indem Sie auch ein Servlet-Objekt erstellen. Aber nehmen wir an, wenn Sie viele Servlet-Dateien haben, dann ist ein eindeutiges UR1-Muster erforderlich, das für den Programmierer geeignet ist.
  • Wenn Sie sich bei der Formularaktion angemeldet haben, rufen Sie die URL der Login-Service-Servlet-URL und beim Abmelden die Logout-Servlet-URL auf.

Glückliche

+0

Sir, aber URL-Muster werden automatisch generiert. Warum sollten wir explizit eindeutige URL für verschiedene Servlets bereitstellen? – kushagra

+0

kushagra - Sie verwenden @annotation-basiertes Servlet, so dass XML-Mapping nicht erforderlich ist. wie ich auf meinem Post erwähne. Glücklich zu helfen –

+0

Danke Sir für Ihre Hilfe .. – kushagra