Premisa del proyecto:
En el artículo anterior, hemos conectado correctamente la fuente de datos y la página de inicio de la aplicación. Vamos a agregar una página al proyecto para probar.
1: Agregue la dependencia del motor de representación de páginas en el archivo pom en el lado web (zh-web). Ahora estoy usando freemarker.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
Posteriormente, configuramos los archivos de configuración relevantes de freemarker en el application.yml de la web (zh-web). El contenido específico es el siguiente:
spring:
freemarker:
suffix: .html
templateEncoding: UTF-8
templateLoaderPath: classpath:/templates/ #需要在web端(zh-web)的resource下建立templates文件夹
content-type: text/html
Luego escribimos el archivo de configuración de enrutamiento en el lado web (zh-web):
El contenido del archivo se muestra en la figura:
package com.zh.controller.common;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
/**
* created with IntelliJ IDEA
*
* @author: create by limu
* Date: 2020/11/13
* Time:15:27
*/
@Controller
public class MappingController {
/**
* 首页测试页面
*
* @return 解析地址
*/
@GetMapping("index")
public String index() {
return "index";
}
}
Luego comenzamos y visitamos 127.0.0.1:8080/index después del inicio, el resultado es el siguiente:
El acceso es exitoso, revisamos la consola del navegador, podemos ver que nos referimos a la dirección del archivo js no hay problema, pero cuando se carga el navegador, el estado pasa a ser 404 no se puede encontrar,
En este momento, necesitamos saber que los archivos estáticos de SpringBoot ignoran la carpeta estática. Podemos cambiar la dirección del recurso estático a lo siguiente:
<script src="/js/jquery.js"></script>
Pero no se puede hacer referencia a esta idea, siempre reportará advertencias amarillas y es inconveniente para nosotros ver archivos js. Generalmente es inconveniente enviar páginas estáticas de front-end. De esta manera, podemos configurar la dirección del recurso estático, como se muestra
Agregue la clase de configuración en el módulo común (zh-common), el contenido del archivo es el siguiente:
package com.zh.config.web;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
* created with IntelliJ IDEA
*
* @author: create by limu
* Date: 2020/11/13
* Time:16:02
*/
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
}
}
Después de esto, cambiamos la dirección a la dirección que nos dio el front-end y reiniciamos y volvemos a intentar. Puedes ver que los archivos se cargan correctamente, jajajaja.
En el próximo artículo, presentaremos una función de inicio de sesión de múltiples terminales