私はspringbootアプリケーション開発の初心者です。このURLの助けを借りて私のプロジェクトを生成しましたhttps://start.spring.io/私のIDEでこのプロジェクトを開くと、2つのクラスが生成されました これは最初のクラスです春のブートプロジェクトのコンフィグレーションクラスの役割
public class ServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(TravellingApplication.class);
}}
、これは
@SpringBootApplication
public class TravellingApplication {
public static void main(String[] args) {
SpringApplication.run(TravellingApplication.class, args);
}}
第二のクラスである私のServletinitializer
クラスにconfigure method
内部で起こっていただきました!私は実際にそれを得ることはありません。私はクラス の両方を削除して、このような何かを行う場合 私は私が間違っている場合
class simmilar to dispatcherservlet.xml
@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.travelliing")
public class WebConfig extends WebMvcConfigurerAdapter {
}
class simmilar to web.xml
public class WebAppInitializer implements WebApplicationInitializer {
@Override
public void onStartup(ServletContext servletContext) throws ServletException { }
}
が私を修正し、
より良いコードの設定を書くことができます。私は
ServletInitializer class
と
webAppInitializer
の両方が何らかの理由で同じ機能を持つことができると思います。
implement WebApplicationInitializer
。
configure method in servletInitializer class
を除き、 です。
@SpringBootApplicationで注釈を付け
travellingApplication class
で起こっていただきました!
はWebMvcConfigureAdapter
なので、 'configure'メソッドが'アプリケーションコンテキスト 'を読み込むのと同じです。'main method'と全く同じことが起こっています。つまり、' webconfigクラス 'で行ったように、そのクラスから 'main method'を削除し、そのクラスを' configuration'のために使うことができます。 – Priyamal
@Priyamalはい、外部Webサーバーにアプリケーションを展開する必要があり、メインメソッドのように組み込みWebサーバーを使用することはできません。 –