プロジェクトをスプリングベースの製品に切り替えたいです。
私の最初のステップは、Java Web アプリケーションを、生成された WAR ファイルから、Spring Boot を利用したスタンドアロンの実行可能 jar ファイルに変換することです。
github からオープン ソースの Web アプリケーションの例を見てみましょう: Vaadin-Spring Web Application
変換を実行するためのガイドがいくつかあることを願っています。
プロジェクトをスプリングベースの製品に切り替えたいです。
私の最初のステップは、Java Web アプリケーションを、生成された WAR ファイルから、Spring Boot を利用したスタンドアロンの実行可能 jar ファイルに変換することです。
github からオープン ソースの Web アプリケーションの例を見てみましょう: Vaadin-Spring Web Application
変換を実行するためのガイドがいくつかあることを願っています。
私が知る限り、このアプリケーションは Spring MVC アプリケーションではありません。そうであれば、おそらく移行がはるかに簡単になるでしょう。(github の問題による) 目標は、実行可能な JAR を取得することです。ただし、基本的な計画は、Spring Boot を使用して最初に WAR に移行し、それが機能したら JAR に移行することです。これは非常に単純なアプリなので、実際に行う必要があるのは、を見てweb.xml
、関連する Spring Boot 機能に変換することだけです。一般的なガイドを次に示します。
SpringBootServletInitializer
(たとえば、 というクラスで)拡張してデプロイ可能な WAR を作成しApplication
、Spring Boot@EnableAutoConfiguration
アノテーションを追加します。例:
@Configuration
@EnableAutoConfiguration
@ComponentScan
public class Application extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
次に、いくつかの構成を追加します。
@Bean
タイプの Aは、その Bean をコンテナにインストールしServlet
ます。ServletRegistrationBean
<servlet/>
<servlet-mapping/>
web.xml
or@Bean
型の Aは同様に動作します ( a と のように) 。Filter
FilterRegistrationBean
<filter/>
<filter-mapping/>
このApplicationContext
場合の は XML ファイルにルートされているため、最も簡単な最初のステップは@Import
それを Spring に入れることApplication
です。@Bean
これは非常に単純なので、定義として数行で再作成できます。
静的リソースは、クラスパス ルートの/public
(または/static
または/resources
または) に移動できます。/META-INFO/resources
WAR が機能したら、main
メソッドを に追加して実行可能にしますApplication
。
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
JAR から WAR への変換に関する入門ガイドも参照してください。
前述したように、この特定のアプリの最大の問題は、Spring MVC アプリではないことです。アイルランド人が言うかもしれないように、「もし私がそこに行きたいと思ったら、ここから出発しないでしょう.」これは一般的に興味深い質問ですが、Spring アプリケーションを Spring Boot に移行しようとしている他の人には、ここで一般的なアドバイスを読んで、別の場所で別の議論を始めることをお勧めします。
とにかく、私はこの特定のアプリを変換する際にバッシュを持ち (ソースコードの jar がいいでしょう)、何か新しいことがわかったらこの応答を更新します。