1、跟着视频课学SpringBoot,自己的一个html登录页面就是在浏览器中渲染不出来效果,很郁闷。我的项目结构如下:
2、想要打开login.html页面,该页面用到了静态资源中的css文件及svg图片,视频课中效果和打开效果对比
3、发现静态文件都没有显示出来,然后单独试了试直接访问css文件或者其他文件,发现部分可以访问,部分不能访问。实际上是都访问不到的,有的可以访问到是因为之前访问过,浏览器中存在缓存,清除缓存后项目中静态资源都访问不到了。(浏览器清除缓存快捷键ctrl+shift+delete)
4、这里考虑到是springboot自动配置功能失效,首先我这里是写了一个关于WebMvcConfig相关的配置类,可以使自动配置功能失效的有两种操作
1、自定义的webMvcConfig配置类继承了WebMvcConfigurationSupport 类,由于看的教学视频是前几年的,里边用的是继承WebMvcConfigurerAdapter,而现在这个类已经标注为废弃了,所以自己选择了WebMvcConfigurationSupport 类来用,因为该类具有相同功能。
@Configuration
public class MyMvcConfig extends WebMvcConfigurationSupport {
@Override
protected void addViewControllers(ViewControllerRegistry registry) {
// super.addViewControllers(registry);
registry.addViewController("/login.html").setViewName("login");
}
WebMvcConfigurationSupport 类就是第一个可以使自动配置失效的操作,以上代码改为实现WebMvcConfigurer接口即可,代码如下
@Configuration
public class MyMvcConfig implements WebMvcConfigurer {
@Override
public void addViewControllers(ViewControllerRegistry registry) {
// super.addViewControllers(registry);
registry.addViewController("/login.html").setViewName("login");
}
重新运行该项目,并刷新浏览器页面,正常显示
2、第二种使自动配置失效的操作是@EnableWebMvc
注解