SpringからSpring Bootへの移行
SpringからSpring Bootへの移行
Spring Bootは私たちの開発に一連の便利さを提供しているので、古いSpringプロジェクトを新しいSpring Bootプロジェクトに変換したいかもしれません.この文章では、どのように操作するかを検討します.
Spring BootはSpringに取って代わるものではなく、自動的に構成されたものを追加しただけで、Springプログラムをより速くすることができます.
Spring Boot startersの追加
Spring Bootを追加するには、Spring Boot Startersを追加するのが一番簡単です.
アプリケーション・エントリの追加
Spring Bootプログラムごとにアプリケーション・エントリが必要です.通常は@SpringBootApplication注釈を使用したmainプログラムです.
@SpringBootApplication注記は、次の注記の組合せです.
@Configuration ,@EnableAutoConfiguration,@ComponentScan .
@SpringBootApplicationは、デフォルトでこのパッケージとサブパッケージのすべてのクラスをスキャンします.一般的にSpringBootApplicationは最上位パッケージの下に置かれます.
Import ConfigurationとComponents
Spring Bootでは通常自動構成が使用されますが、既存のjava構成やxml構成を手動でImportすることもできます.
既存の構成では、2つのオプションがあります.1つは、これらの構成をプライマリアプリケーションの同じレベルのパッケージまたはサブパッケージの下に移動し、自動スキャンを容易にすることです.2つ目は明示的なインポートです.
インポートの表示方法を見てみましょう.
xmlファイルの場合は、@ImportResourceを使用してインポートすることもできます.
アプリケーションリソースの移行
Spring Bootは、デフォルトで次のリソースアドレスを検索します.
移行するには、既存のリソースを控訴のリソースアドレスに移行するか、次の方法を使用します.
アプリケーション・プロパティ・ファイルの移行
Spring Bootは次のような場所でアプリケーションを探します.propertiesまたはapplication.ymlファイル:
プロパティファイルを上記のパスの下に移動できます.
Spring Webプログラムの移行
Spring Webプログラムを移行するには、次の手順に従います. spring-boot-starter-web依存を追加:
Spring Bootの自動構成により、classpathの依存パッケージが自動的に検出され、@EnableWebMvcが自動的に開き、DispatcherServiceletが作成されます.
@Configurationクラスで@EnableWebMvc注記を使用すると、自動構成は無効になります.
この自動構成は、次の3つのbeanを同時に自動的に構成します. HttpMessageConverterはJSONとXMLを変換するために使用されます. /error mappingは、すべてのエラーを処理するために使用される /static,/public,/resourcesまたは/META-INF/resourcesの静的リソースサポート. ビューテンプレート の構成
Webページの場合、通常はJSPではなく、Thymeleaf、Groovy、FreeMarker、Mustacheの代わりに様々なテンプレート技術を使用します.私たちがしなければならないのは、次の依存を追加することです.
templateファイルは/resources/templatesの下にあります.
まだJSPを使用する必要がある場合は、次のような構成を表示する必要があります.
チュートリアルの詳細については、flydeanのブログを参照してください.
Spring Bootは私たちの開発に一連の便利さを提供しているので、古いSpringプロジェクトを新しいSpring Bootプロジェクトに変換したいかもしれません.この文章では、どのように操作するかを検討します.
Spring BootはSpringに取って代わるものではなく、自動的に構成されたものを追加しただけで、Springプログラムをより速くすることができます.
Spring Boot startersの追加
Spring Bootを追加するには、Spring Boot Startersを追加するのが一番簡単です.
org.springframework.boot
spring-boot-starter-parent
2.2.2.RELEASE
アプリケーション・エントリの追加
Spring Bootプログラムごとにアプリケーション・エントリが必要です.通常は@SpringBootApplication注釈を使用したmainプログラムです.
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
@SpringBootApplication注記は、次の注記の組合せです.
@Configuration ,@EnableAutoConfiguration,@ComponentScan .
@SpringBootApplicationは、デフォルトでこのパッケージとサブパッケージのすべてのクラスをスキャンします.一般的にSpringBootApplicationは最上位パッケージの下に置かれます.
Import ConfigurationとComponents
Spring Bootでは通常自動構成が使用されますが、既存のjava構成やxml構成を手動でImportすることもできます.
既存の構成では、2つのオプションがあります.1つは、これらの構成をプライマリアプリケーションの同じレベルのパッケージまたはサブパッケージの下に移動し、自動スキャンを容易にすることです.2つ目は明示的なインポートです.
インポートの表示方法を見てみましょう.
@SpringBootApplication
@ComponentScan(basePackages="com.flydean.config")
@Import(UserRepository.class)
public class Application {
//...
}
xmlファイルの場合は、@ImportResourceを使用してインポートすることもできます.
@SpringBootApplication
@ImportResource("applicationContext.xml")
public class Application {
//...
}
アプリケーションリソースの移行
Spring Bootは、デフォルトで次のリソースアドレスを検索します.
/resources
/public
/static
/META-INF/resources
移行するには、既存のリソースを控訴のリソースアドレスに移行するか、次の方法を使用します.
spring.resources.static-locations=classpath:/images/,classpath:/jsp/
アプリケーション・プロパティ・ファイルの移行
Spring Bootは次のような場所でアプリケーションを探します.propertiesまたはapplication.ymlファイル:
*
* /config
* classpath /config
* classpath root
プロパティファイルを上記のパスの下に移動できます.
Spring Webプログラムの移行
Spring Webプログラムを移行するには、次の手順に従います.
org.springframework.boot
spring-boot-starter-web
Spring Bootの自動構成により、classpathの依存パッケージが自動的に検出され、@EnableWebMvcが自動的に開き、DispatcherServiceletが作成されます.
@Configurationクラスで@EnableWebMvc注記を使用すると、自動構成は無効になります.
この自動構成は、次の3つのbeanを同時に自動的に構成します.
Webページの場合、通常はJSPではなく、Thymeleaf、Groovy、FreeMarker、Mustacheの代わりに様々なテンプレート技術を使用します.私たちがしなければならないのは、次の依存を追加することです.
org.springframework.boot
spring-boot-starter-thymeleaf
templateファイルは/resources/templatesの下にあります.
まだJSPを使用する必要がある場合は、次のような構成を表示する必要があります.
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
チュートリアルの詳細については、flydeanのブログを参照してください.