目的
今後も長くソフトウェアエンジニアとしてのキャリアを築いていくことを
考えたときに、Webやネットワーク、データベースといった技術を利用した
システムを開発できる能力は必須だなと思うようになりました。
そこで、ちょうど今年から仕事でJavaを扱うようになったのと、つい最近
上記の書籍が発売になったのをきっかけに、Webアプリ開発を勉強し始めました。
今回は、その勉強の一環であるタスク管理アプリと、その開発を通じて学んだ
Webアプリ開発の基礎についてまとめたいと思います。
目次
- 目的
- 目次
- Webアプリとは
- Webアプリの仕組み
- HTTP通信
- HTTP通信とHTTPS通信
- フレームワークを利用したアプリ開発
- Spring BootによるWebアプリ開発
- Spring Bootを用いたタスク管理アプリの開発
- 要件定義
- 開発用プロジェクトの作成
- プロジェクトの中身の確認
- プラグインの設定
- IntelliJからアプリをビルド・実行するための設定
- アプリのビルドと実行
- アプリをコマンドラインから起動できるようにする方法
- Maven Wrapperとは
- MVCモデル
- コントローラを実装するためのアノテーション
- データベースの導入
- SQLによるデータベースの操作
- Javaプログラムからのデータベース接続
- H2データベースの利用
- データベーステーブルの初期化
- データベース操作用クラスの作成
- JdbcTemplateクラス
- DI(Dependency Injection: 依存性の注入)
- タスク情報を保持するモデルの作成
- データベースにタスク情報を追加するメソッドの実装
- タスク情報を全て取得するメソッドの実装
- データベースからタスク情報を削除するメソッドの実装
- データベースのタスク情報を更新するメソッドの実装
- データベースから特定のタスクidを取得するメソッドの実装
- コントローラクラスの作成
- @Controllerアノテーションによるコントローラの作成
- TaskListDaoクラスのフィールドへの追加
- タスクを追加するエンドポイントの作成
- HTTPリクエストにおけるGETとPOST
- テンプレートエンジンによるビューの作成
- Thymeleafの利用
- HTMLテンプレートの作成
- タスク一覧表示機能のエンドポイントの作成
- CSSによるテンプレートの装飾
- タスク情報を削除するエンドポイントの追加
- タスク情報を更新するエンドポイントの追加
- 動作確認
続きを読む