🌸 Spring超入門 #03 Spring Boot基礎

 

🌐Webアプリケーションの基本概念

💻クライアント

何かサービスを依頼する側のコンピューターやソフトウェア

例: Webブラウザー

🖥️サーバー

サービスを提供する側のコンピューターやソフトウェア

例: Tomcat(埋め込み型サーバー)

📤リクエスト

クライアントがサーバーに送るサービス依頼のメッセージ

プロトコル: HTTP

📥レスポンス

サーバーがクライアントに返す処理結果のメッセージ

形式: HTML、JSON など

🔧Spring Bootの特徴

🚀 主な利点

  • 少ない設定でプロジェクト作成可能
  • 枠組を提供:Spring部品や外部部品を使った枠組を自動作成
  • 部品の配置が簡単:フレームワークに部品を配置しやすい
  • COC原則:繁雑な設定が不要
  • 埋め込み型サーバー:デフォルトでTomcatを使用

📊今回作成するサンプル

🎯 サンプルの仕様

URL: http://localhost:8080/hello

リクエスト: GETリクエスト

レスポンス: 「ハロースプリング」をHTML形式で表示

🏗️ プログラム構成

🎮コントローラー

リクエストを受け取って処理する部品

実装: Javaクラス(POJO)

名前: HelloSpringController

ハンドラーメソッド

URLパターンに応じて処理するメソッド

名前: hello()

URL: /hello のGETリクエストを処理

📄HTMLテンプレート

結果を表示するHTMLのひな型

名前: hellospring.html

エンジン: Thymeleaf

⚙️Spring Boot内部の動作フロー

🔄 処理の流れ
  1. ブラウザーからGETリクエストが送信される
  2. フロントコントローラーがリクエストを受け取る
  3. URLパターンから対応するコントローラーのハンドラーメソッドを特定
  4. ハンドラーメソッドを呼び出して処理を実行
  5. HTMLテンプレート名をフロントコントローラーに返す
  6. フロントコントローラーがHTMLテンプレートを見つける
  7. ThymeleafにHTMLレスポンス作成を依頼
  8. クライアントにHTMLレスポンスを送信

🛠️実装手順

1. Spring Bootプロジェクト作成

プロジェクト設定:

  • 名前: spring-start-03
  • タイプ: Maven
  • パッケージング: Jar
  • Javaバージョン: 17
  • 言語: Java

2. 依存関係の選択

🔧Spring Boot DevTools

開発時に便利なツール

  • 自動リロード機能
  • デバッグサポート
🌐Spring Web

Webアプリ作成の枠組を提供

  • Webアプリ開発で必須
  • HTTPリクエスト処理
🍃Thymeleaf

テンプレートエンジン

  • HTMLテンプレート処理
  • Spring推奨

3. コントローラー作成

🏷️ アノテーションの説明

  • @Controller: このクラスがコントローラーであることを示す
  • @GetMapping(“/hello”): URLパターン”/hello”のGETリクエストを処理
  • 戻り値String: HTMLテンプレート名として認識される

4. HTMLテンプレート

 

 

 

📍 配置場所

パス: src/main/resources/templates/hellospring.html

Springはこのフォルダーから自動的にHTMLテンプレートを探します

5. アプリケーション起動

Boot Dashboard使用:

  1. Boot Dashboardを開く
  2. ローカル → spring-start-03 を選択
  3. 右クリック → 「起動」を選択
  4. コンソールでエラーがないことを確認

6. 動作確認

ブラウザーでアクセス:

http://localhost:8080/hello

「ハロースプリング」と表示されれば成功!

🎉 まとめ

Spring Bootを使って初めてのWebアプリケーションを作成しました!
アノテーションを使うことで、少ないコードで動作するアプリが完成。
次回はもっと複雑な機能を実装していきます!

🔑 重要なポイント

  • アノテーションが重要な役割を果たす
  • COC原則により設定が最小限
  • フロントコントローラーがリクエストを振り分け
  • ThymeleafがHTMLテンプレートを処理
  • 埋め込み型Tomcatで簡単にサーバー起動

参考URL

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


最近のコメント