SpringBoot--MVC相關配置

BtWangZhi發表於2017-11-18

1 靜態資源
如果進入SpringMVC的規則為/時,Spring Boot的預設靜態資源的路徑為:
spring.resources.static-locations=
classpath:/META-INF/resources/,
classpath:/resources/,
classpath:/static/,
classpath:/public/
能正常訪問:
http://localhost:8080/public/01.png
這裡寫圖片描述

2 訊息轉換器
Spring中預設的編碼格式為ISO-8859-1,而SpringBoot幫助我們預設配置訊息編碼格式為UTF-8。
如果我們要自己自己配置的話,只需要在@Configuration的類中新增訊息轉化器的@bean加入到Spring容器,就會被Spring Boot自動加入到容器中。如下:

@Bean
    public StringHttpMessageConverter stringHttpMessageConverter(){
        StringHttpMessageConverter converter  = new StringHttpMessageConverter(Charset.forName("UTF-8"));
        return converter;
    }

類似於之前在配置檔案中:
這裡寫圖片描述
其他的比如JSON轉換配置類似,建立一個物件放在容器中。

3 攔截器
在SpringBoot中的攔截器是繼承自WebMvcConfigurerAdapter,重寫addInterceptors方法,並且類上新增@Configuration,宣告這是一個配置。

/**
 * 攔截器配置
 * @author Tang
 *
 */
@Configuration//宣告這是一個配置
public class MySpringMVConfig extends WebMvcConfigurerAdapter{
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        HandlerInterceptor handlerInterceptor=new HandlerInterceptor() {
            @Override
            public boolean preHandle(HttpServletRequest request,
                    HttpServletResponse response, Object handler) throws Exception {
                System.out.println("自定義攔截器。。。。。。。。。。。。。。。");
                return true;
            }

            @Override
            public void postHandle(HttpServletRequest request,
                    HttpServletResponse response, Object handler,
                    ModelAndView modelAndView) throws Exception {
            }

            @Override
            public void afterCompletion(HttpServletRequest request,
                    HttpServletResponse response, Object handler, Exception ex)
                    throws Exception {
            }
        };
        registry.addInterceptor(handlerInterceptor).addPathPatterns("/**");
    }
}

需要說明的是,該類必須要和啟動類放在同一個包下。
這裡寫圖片描述
當啟動類為HelloApplication時,將會掃描該包下所有類名標示為@Configuration的型別。當訪問http://localhost:8080/hello時。
這裡寫圖片描述

4 與傳統的SSM專案進行對比,SpringBoot中需要配置的項。
這裡寫圖片描述
這裡寫圖片描述

部分摘自某智播客。

相關文章