79

Spring MVCプロジェクトをアップグレードして、新しいアノテーションを利用し、xmlを削除しようとしています。以前は、静的リソースweb.xmlを次の行でロードしていました。

<mvc:resources mapping="/resources/**" location="/resources/" /> 

現在、WebApplicationInitializerクラスと@EnableWebMvcアノテーションを利用してxmlファイルなしでサービスを起動していますが、リソースをロードする方法がわからないようです。

xmlを使用せずにこれらのリソースを引き戻すためのアノテーションまたは新しい構成はありますか?

4

2 に答える 2

121

春3&4の場合:

これを行う1つの方法は、構成クラスを拡張してからWebMvcConfigurerAdapter、次のメソッドをそのようにオーバーライドすることです。

@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry) {
    registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}
于 2013-02-13T20:42:45.810 に答える
25

春5

Spring 5の時点で、これを行う正しい方法は、単にWebMvcConfigurerインターフェースを実装することです。

例えば:

@Configuration
@EnableWebMvc
public class MyApplication implements WebMvcConfigurer {

    public void addResourceHandlers(final ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
    }
}

WebMvcConfigurerAdapterの非推奨メッセージを参照してください

于 2018-02-12T19:47:04.917 に答える