Suministro de recursos estáticos predeterminados
SpringBoot tiene varios directorios de recursos estáticos predeterminados, que también se pueden configurar. La configuración predeterminada /** se mapea a /static (o /public, /recursos, /metainf /recursos), y el método de configuración personalizado es el siguiente:
Spring.MVC.Static-Path-Pattern =/** # Patrón de ruta utilizado para recursos estáticos.
Si el front-end necesita acceder a los recursos estáticos predeterminados, preste atención a la siguiente estructura del directorio:
└─ RESOURES │ APLICACIÓN
¿Cómo hacer referencia a los recursos estáticos anteriores en index.html?
El siguiente método de escritura:
<link rel = "stylesheet" type = "text/css" href = "/css/index.css" rel = "externo nofollow"> <script type = "text/javaScript" src = "/js/index.js"> </script>
Nota: La configuración predeterminada /** se mapea a /static (o /public, /recursos, /meta-inf /recursos)
Al solicitar /css/index.css, Spring MVC se encontrará en el directorio /static /.
Si está configurado como /static/css/index.css, entonces no hay directorio no /estático en varios directorios configurados anteriormente, ¡por lo que no se encontrará el archivo de recursos!
Entonces, al escribir ubicaciones de recursos estáticos, ¡no traiga los nombres de los directorio mapeados (como/static/,/public/,/recursos/,/metainf/recursos/)!
Recursos estáticos personalizados
La información en línea dice que la especificación se puede definir en el archivo de configuración. No usé este método. Lo usé implementando configuración extendida.
PD: Explique que en la versión SpringBoot 1.x, algunas configuraciones relacionadas con Spring MVC se extienden al heredar WebMVCAUToconfiguration, pero en la versión 2.x, la interfaz WebMVCCONFIGUERRer se implementa directamente en extensión de las funciones relacionadas con Spring MVC, como la configuración de un Interceptor, la configuración de un Valor de retorno general, la configuración de la excepción unificada, etc., de curso, de curso, también incluye un Interceptor, que está configurando el Interceptor, la configuración de un Valor de retorno general, configurando una excepción unificada, etc., de curso, de curso, también incluye un Interceptor, que también incluye el Interceptor, también está configurando el Regado de retorno, lo que incluye el Procesador de Valor de Retorno, configurando una excepción unifificada, de ruta, también incluye el Registro de Regalización. En este artículo, cubriendo los métodos predeterminados, como el interior.
Simplemente suba el código:
@ConfigurationPublic Class myWebAppConfigurer implementa WebMVCConfigurer {// event.share.image.dir =/data/stare/image/@Value ("$ {event.share.image.dir}") cadena privada salida dir; @Override public void AddResourceHandlers (Registro de recursos de recursos) {Registry.AddResourceHandler ("/Share/Image/**"). AddResourCelocations ("Archivo:"+OutputDir); }}Nota: El fondo del código anterior es una imagen tomada de otro lugar dinámicamente. No debe colocarse en el paquete de jarras sringboot. Por lo tanto, a través de la configuración anterior, puede acceder directamente a la imagen en /data/share/image/a.jpg a través de http: //host/share/image/a.jpg. Si el archivo de recursos estáticos no es dinámico, también está en el directorio de recursos, solo necesita escribirlo así:
Registry.AddResourceHandler ("/Share/Image/**"). AddResourCelocations ("classpath:"+outputDir); // Cambiar el archivo a classpathAcceso a los recursos estáticos a través de la clase de herramientas SpringBoot
Muy simple, el código es el siguiente:
Cadena final estática privada en segundo plano_image = "share/background.jpg"; file = new classpathResource (background_image.
Resulta que hay otra forma de escribirlo:
static final static final staty background_image = "classpath: share/backgro con coneño"; archivo file = recocesceUtils.getFile (en segundo plano_image);
Pero en la versión 2.x, puede aparecer lo siguiente, pero la excepción
java.io.fileNotFoundException: recursos de ruta de clase [share/background.jpg] no se puede resolver a la ruta de archivo absoluto porque no reside en el sistema de archivos: jar: file: /home/ubuntu/wxcs/calendar-api-1.0.0.jar!/boot-inf/classes! /share/background.jpgggggg
Recomendaría la primera forma de escribirlo.