springboot不经过controller直接访问html页面


自定义视图映射可以解决这个问题,默认情况下template中的静态页面无法直接通过URL访问,需要通过controller的跳转,定义映射之后,可以将直接访问的URL映射成类似controller的跳转功能。

//扩展配置功能
@Configuration
public class MyConfigMvc extends WebMvcConfigurerAdapter {

    //所有的WebMvcConfigurerAdapter组件都会一起起作用
    @Bean //将组件注册在容器
    public WebMvcConfigurerAdapter webMvcConfigurerAdapter(){
        WebMvcConfigurerAdapter adapter = new WebMvcConfigurerAdapter() {
            /*视图映射功能*/
            @Override
            public void addViewControllers(ViewControllerRegistry registry) {
                //视图映射:浏览器发送"/"请求,会来到index页面(thymeleaf解析的页面),
                registry.addViewController("/").setViewName("/index");
                registry.addViewController("/index.html").setViewName("/index");
                registry.addViewController("/home.html").setViewName("/index");
                //配置springboot直接访问静态html页面,不经过controller
                //配置之后,发送/loginAndRegister.html,就相当于在controller中return "loginAndRegister"
                registry.addViewController("/loginAndRegister.html").setViewName("/loginAndRegister");
            }
        };
        return adapter;
    }
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM