# SpringBoot ## 1. SpringBoot開発環境の構築 ### 1.1 ビルドツール #### 1.1.1 ビルドツールとは SpringBootの利用には、ビルドツールを用いるのが一般的である。 ビルドツールとは、対象の環境でプログラムを実行できるように、アプリやライブラリを組み立てるためのツール。 代表的なツールとしては、Ant(Apache), Maven, Gradle等 前二つはビルドファイルがXML文なのに対し、GradleではGroovyという可読性が高い言語で書かれている。 Gradleは現在ではJavaのデファクトスタンダードの地位を確立しつつある。 #### 1.1.2 Maven・Gradleのセットアップ 1. Maven及びGradleをインストールする。 2. セットアップウィザードの実行又はjipの解凍により、適切な位置にフォルダを展開する。 3. PCが各アプリケーションを認識できるよう、環境変数を設定する。 #### 1.1.3 環境変数設定 別ページにまとめている。[環境変数設定](https://hackmd.io/1cU8UN5eQi2EMTP7lNTNvw) ### 1.2 統合開発環境(IDE) 様々なツールの集合からなるソフトウェアの統合的な開発環境。 言語によって適した環境は異なる。 Javaの場合Ecripseや、IntelliJが有名である。 これらの開発環境は、MavenやGradleで使用する各種プラグインに対応しており、SpringBootもこのプラグインから利用することになる。 ## 2. +KotlinでHelloWorld ### Kotlinとは [Wikipedia](https://ja.wikipedia.org/wiki/Kotlin) Kotlin(コトリン)は、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、静的型付けのオブジェクト指向プログラミング言語である。Java との相互運用性があり、Kotlin から Java を呼び出すことも、Java から Kotlin を呼び出すこともできる。 ### 1. Spring Initializr Spring Initializrとは、Springプロジェクトを作成する場合、現在最も簡単に目的の依存関係を整える方法である。プロジェクトのセットアップ時に、ここで依存関係を決定しておく。 ## 3. Mavenを用いてHelloWorldを表示する。 ### 3.1 POM.xmlファイル Mavenの場合、POM.xmlというXMLファイルに使用するライブラリ設定や依存設定等を記入する。 #### Mavenならではの設定 * 依存関係 parentタグのbook-starter-parentは、有用なMavenデフォルトを提供する特別なスターターである。これらのスターターを利用するためには、必要となる依存関係のIDをdependenciesタグ内のdependencyタグに記述する必要がある。 * parentタグ内の設定事項(参考) * groupIdタグ:org.springframework.boot * artifactIdタグ:spring-boot-starter-parent * versionタグ:2.4.0(Java15対応) * dependenciesタグ内の設定事項(参考) * groupIdタグ:org.springframework.boot * artifactIdタグ:spring-boot-starter-web * POM.xmlを変更した際は、必ずPOM.XMLをリロードし、必要なライブラリをダウンロードする。 ### 3.2 SpringBootを用いたコード #### 4.1 入力手順 1. org.springframeworkの各種機能をimportする。(boot, boot.autoconfigure,web.bind.annotation)等。 2. ステレオタイプアノテーション機能(@RestController)を記入する。ステレオタイプアノテーションとは、コードを読んでいる人やクラスが、特定のロールを果たす Spring のヒントを提供するものである。 3. Springの構成方法をSpringに習得させる、@EnnableAutoCofigurationを記入する。 4. ルーティング機能(@RequestMapping("/"))を記入する。これは、/パスを持つHTTPリクエストが、homeメソッドにマッピングするために必要なルーティング情報を提供するものである。 5. mainメソッドに処理したい内容を記録する。 ###### tags: `SpringBoot`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up