Ich versuche, eine erholsame Stil-API zu erstellen, mit springMVC
.SpringMVC - Dispatcher Servler URL-Muster-Stil
Bei der Konfiguration der URL-Muster für springMVC DispatcherServlet
, scheint es 2 Wahl haben, und ich brauche einen Rat.
Wahl A:
Konfigurationsmuster als: <url-pattern>*.action</url-pattern>
und Aktions Verwendung Pfad so @RequestMapping("/role/add.action")
Wahl B:
Konfigurationsmuster als: <url-pattern>/api/*</url-pattern>
und Aktions Verwendung Pfad wie @RequestMapping("/api/role/add")
Ich bevorzuge einen Stil, der kein Suffix hat, aber in diesem Fall muss ich ein tun dd ein Unterpfad.
Aber ich bin mir nicht sicher, welche in einem Projekt, das als Backend dienen soll, um eine erholsame API zu bieten, mit Browser/IOS/Android als sein Client richtiger ist.
Es könnte eine Wahl C sein, aber ich bin mir nicht sicher:
Konfigurationsmuster wie: <url-pattern>/*</url-pattern>
und Aktion Verwendung Pfad wie @RequestMapping("/role/add")
In diesem Fall Einbau- Servlet wird überschrieben, zB jsp wird nicht normal funktionieren.
Aber ich habe keine jsp
, und auch, statische Ressource wie html/js/css/image/document/music/video
sind alle auf einen anderen Port oder Server von nginx
, Anfrage an Tomcat nur AJAX-Dienst über JSON-Daten zur Verfügung gestellt setzen.
Also in diesem Fall ist es richtig, Wahl C zu verwenden, oder es hat einige schlechte Nebenwirkungen?
Ich empfehle mit Spring-Boot, das die Notwendigkeit beseitigt, für irgendeine solche Spezifikation. – chrylis
@chrylis Können Sie helfen, ein wenig darüber zu erklären, wie Spring Boot dies beheben? Weil ich gemäß der Servlet-Spezifikation kein Muster finden kann, das weder Suffix noch Unterpfad hat, während das Vermeiden der integrierten Servlets vermieden werden könnte. –
Spring Boot verwaltet den gesamten Container für Sie, sodass Sie keine Pfade angeben müssen. – chrylis