专栏首页别先生SpringBoot2.x|Thymeleaf页面不能正常载入css、js文件

SpringBoot2.x|Thymeleaf页面不能正常载入css、js文件

1、实现实现WebMvcConfig配置类可以解决页面不能加载css,js的问题;

扩展SpringMvc,编写一个配置类(@Configuration),是WebMvcConfigurationAdapter抽象类类型(WebMvcConfigurer 接口类型的),且不能标注@EnableWebMvc 如果SpringBoot本身的自动配置不能满足自己的需求,就需要扩展SpringMVC配置文件。WebMvcConfigurer可以扩展SpringMvc的功能。

 1 package com.bie.config;
 2 
 3 import org.springframework.context.annotation.Configuration;
 4 import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
 5 import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
 6 import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 7 
 8 /**
 9  *
10  */
11 @Configuration
12 public class SpringMvcWebConfigSupport implements WebMvcConfigurer {
13 
14     /**
15      * 默认访问的是首页 //保留了SpringBoot的自动配置,也使用了自己的SpringMmv的配置
16      * @param registry
17      */
18     @Override
19     public void addViewControllers(ViewControllerRegistry registry) {
20         registry.addViewController("/").setViewName("index");//前拼templates,后拼.html
21         registry.addViewController("/index.html").setViewName("index");//浏览器发送/请求来到login.html页面,不用写controller控制层的请求方法了
22     }
23 
24     /**
25      * 将static下面的js,css文件加载出来
26      * @param registry
27      */
28     @Override
29     public void addResourceHandlers(ResourceHandlerRegistry registry) {
30         //registry.addResourceHandler("/static/").addResourceLocations("classpath:/static/");
31         registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
32     }
33 }

因为在SpringBoot的2.x新版本中WebMvcConfigurerAdapter (使用WebMvcConfigurerAdapter可以来扩展SpringMVC的功能)配置类已经不推荐使用了,可以使用WebMvcConfigurer 或者WebMvcConfigurationSupport来配置自己的配置信息。

 1 //package com.bie.config;
 2 //
 3 //import org.springframework.context.annotation.Configuration;
 4 //import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
 5 //import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
 6 //
 7 ///**
 8 // * WebMvcConfigurerAdapter类已经不推荐使用了
 9 // */
10 //@Configuration
11 //public class SpringMvcWebConfig extends WebMvcConfigurerAdapter {
12 //
13 ////    @Override
14 ////    public void addViewControllers(ViewControllerRegistry registry) {
15 ////        //浏览器发送请求到到指定的页面
16 ////        registry.addViewController("/").setViewName("index");
17 ////    }
18 //
19 //    public WebMvcConfigurerAdapter webMvcConfigurerAdapter(){
20 //        WebMvcConfigurerAdapter adapter = new WebMvcConfigurerAdapter(){
21 //            @Override
22 //            public void addViewControllers(ViewControllerRegistry registry) {
23 //                registry.addViewController("/").setViewName("index");
24 //            }
25 //        };
26 //        return adapter;
27 //    }
28 //}

待续......

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Quartz的简单使用。

    1、Java定时器任务调度工具Quartz(纯java编写,十分强大)。由OpenSymphony提供的强大开源任务调度框架。官方网址:http://www.q...

    别先生
  • springboot拦截器拦了静态资源css,js,png,jpeg,svg等等静态资源

    1、在SpringBoot中自己写的拦截器,居然把静态资源也拦截了,导致了页面加载失败。

    别先生
  • SpringCloud的入门学习之概念理解、Config配置中心

    1、SpringCloud Config分布式配置中心。分布式系统面临的配置问题。

    别先生
  • 聊聊rocketmq的SERVICE_NOT_AVAILABLE

    rocketmq-all-4.6.0-source-release/common/src/main/java/org/apache/rocketmq/commo...

    codecraft
  • python测试开发django-64.序列化(Serializer)

    REST framework中的serializers与Django的Form和ModelForm类非常像。我们提供了一个Serializer类,它为你提供了强...

    上海-悠悠
  • 李航「机器学习」最全综述

    接下来我会依次整理《统计学习方法》第2版课件的每一章节PPT到公众号里,感觉这样直接学习更加方便友好些,希望这种方式可以真正帮助到各位。

    double
  • 李航「感知机和K-近邻算法」PPT概览

    接下来我会依次整理《统计学习方法》第2版课件的每一章节PPT到公众号里,感觉这样直接学习更加方便友好些,希望这种方式可以真正帮助到各位。

    double
  • 几款效率神器助你走上人生巅峰

      在我的工作和生活中,我一直都很注重效率工具的使用,这么些年下来也积累好几款很不错,但是又不为大多数人所熟知的软件工具,我用起来得心应手,很不错。那我就像在此...

    阿豪聊干货
  • 资金与疯子扑向智能家居,2015是否爆发?

    ---- 今年CES归来有些伤感,感觉火了近十年的智能手机已进入“后手机时代”。不过更多的还是惊喜,因为真切感受到一个万物互联的新时代正在开启,各种智能产品百...

    机器人网
  • MacBook Pro 安装 Windows 10

    最近需要在 Windows 10 下开发 C# WinForm 应用,还可能要随身携带。

    iOSDevLog

扫码关注云+社区

领取腾讯云代金券