Cet article présente principalement les informations pertinentes de Spring MVC pour accéder en détail aux fichiers statiques. Il a une certaine valeur de référence. Les amis intéressés peuvent se référer à
Comment intercepter "*. Pour les URL avec un suffixe comme ". do", il n'y a aucun problème de ne pas pouvoir accéder aux ressources statiques.
Si votre DispatcherServlet intercepte "/" et intercepte toutes les requêtes afin d'implémenter le style REST, alors l'accès aux fichiers statiques tels que *.js, *.jpg sera également intercepté.
Nous devons résoudre ce problème.
Objectif : les fichiers statiques sont accessibles normalement et 404 ne peut pas être signalé lorsque les fichiers statiques sont introuvables.
Option 1 : Activer le serveur par défaut de Tomcat pour traiter les fichiers statiques
Code XML
<servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.jpg</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.js</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.css</url-pattern> </servlet-mapping>
Pour en configurer plusieurs, un pour chaque fichier
doit être écrit devant DispatcherServlet, laissez defaultServlet intercepter la requête en premier, afin que la requête n'entre pas dans Spring, je je pense que la performance est la meilleure.
Le nom du servlet par défaut fourni avec Tomcat, Jetty, JBoss et GlassFish - "default"
Le nom du servlet par défaut fourni avec Google App Engine --"_ah_default"
Resin est livré avec le nom du servlet par défaut -- "resin-file"
Le nom du servlet par défaut fourni avec WebLogic -- "FileServlet"
Le nom du servlet par défaut fourni avec WebSphere -- "SimpleFileServlet"
Option 2 : Au printemps 3.0.4 et versions ultérieures, mvc:resources est fourni Comment utiliser :
Code XML
<!-- 对静态资源文件的访问 --> <mvc:resources mapping="/images/**" location="/images/" />
Erreur AVERTISSEMENT : aucun mappage trouvé pour la requête HTTP avec l'URI [/mvc/user/findUser/lisi/770] dans DispatcherServlet avec le nom 'springMVC'
Option trois : Utiliser <mvc:default-servlet-handler/>Code XML
<mvc:default-servlet-handler/>
DefaultServletHttpRequestHandler Utilisez le servlet par défaut de chaque conteneur de servlet
La valeur de l'attribut d'ordre de DefaultAnnotationHandlerMapping est : 0
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!