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