Meines Wissens wurde diese Konvention von Struts1 verbreitet. In der Bedienungsanleitung heißt es:
Hinweis: Das Material in diesem Abschnitt ist nicht spezifisch für Streben. Die Konfiguration der Servlet-Zuordnungen ist in der Java-Servlet-Spezifikation definiert. In diesem Abschnitt werden die gängigsten Methoden zum Konfigurieren einer Anwendung beschrieben.
Es gibt zwei gängige Ansätze zum Definieren der URLs, die vom Controller-Servlet verarbeitet werden: Präfixabgleich und Erweiterungsabgleich. Ein geeigneter Zuordnungseintrag für jeden Ansatz wird unten beschrieben.
Präfixabgleich bedeutet, dass alle URLs, die (nach dem Kontextpfadteil) mit einem bestimmten Wert beginnen, an dieses Servlet übergeben werden sollen. Ein solcher Eintrag könnte folgendermaßen aussehen:
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>/do/*</url-pattern>
</servlet-mapping>
/logon
Dies bedeutet, dass ein Anforderungs-URI, der mit dem zuvor beschriebenen Pfad übereinstimmt, folgendermaßen aussehen könnte:
http://www.mycompany.com/myapplication/do/logon
Wo /myapplication
ist der Kontextpfad, unter dem Ihre Anwendung bereitgestellt wird?
Die Erweiterungszuordnung hingegen ordnet Anforderungs-URIs dem Aktionsservlet zu, basierend auf der Tatsache, dass die URI mit einem Punkt endet, gefolgt von einem definierten Zeichensatz. Beispielsweise wird das JSP-Verarbeitungsservlet dem *.jsp
Muster zugeordnet, sodass es aufgerufen wird, um jede angeforderte JSP-Seite zu verarbeiten. Um die *.do
Erweiterung zu verwenden (was "etwas tun" impliziert) , würde der Zuordnungseintrag folgendermaßen aussehen:
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
und ein Anforderungs-URI, der mit dem /logon
zuvor beschriebenen Pfad übereinstimmt,
könnte folgendermaßen aussehen:
http://www.mycompany.com/myapplication/logon.do
WARNUNG - Das Framework funktioniert nicht ordnungsgemäß, wenn Sie mehr als ein <servlet-mapping>
Element für das Controller-Servlet definieren.
WARNUNG - Wenn Sie die neue Modulunterstützung seit Version 1.1 verwenden, sollten Sie sich bewusst sein, dass nur die Erweiterungszuordnung unterstützt wird.