Amanjackのブログ

プログラミング初心者、FX初心者の成長日記

スッキリわかるサーブレット&JSP入門 第2版 〜振り返り〜

スッキリわかるシリーズの「スッキリわかるサーブレットJSP入門 第2版

」を読みましたので、振り返ります。

 

本作はすっきりわかるシリーズの4作目です。

  • スッキリわかるJava入門 第3版
  • スッキリわかるJava入門 実践編 第2版
  • スッキリわかるSQL入門 第2版
  • スッキリわかるサーブレットJSP入門 第2版

SQL入門は読んでいませんが、他の3作はどれもわかりやすく良質な本でしたので、

Javaを学習するならこれらの本で体系的に学ぶのはオススメです。

ただ、ボリュームが多いのでこれらを全部読もうとすると時間は掛かります。

 

掛かった読書時間はこんな感じです。 

シリーズ 読了時間
スッキリわかるJava入門 第3版 25時間
スッキリわかるJava入門 実践編 第2版 20時間
スッキリわかるサーブレットJSP入門 第2版 20時間

 

第1章 HTMLとWebページ

HTMLとはWebページを記述する言語のことです。HTMLの説明は少ないので、全然わからないと言う方は別途学習が必要です。

 

第2章 Webのしくみ

Web通信のしくみ、サーバーとのやりとり、開発環境など学びます。リクエスト、レスポンス、Content-Type、Eclipse、ApacheTomcatなどの用語がでてきます。

 

第3章 サーブレットの基礎

サーブレットとはサーバーサイドのプログラムを作る技術のことです。サーブレットクラスをサーバー上で実行してHTMLを出力します。サーブレットクラスでの定義方法の仕組みを学びますが、フォーマットはEclipseが自動で生成してくれます。

 

第4章 JSPの基本

JSPとはJavaSeverPagesの略です。サーブレットと同じくサーバーサイドプログラムの技術のことです。JSPはHTMLにJavaのコードを埋め込む形になり、サーブレットよりもHTMLの記述が楽になります。

 

第5章 フォーム

formタグを使ってWebページに入力したデータをサーバーサイドプログラムに送信します。GETリクエストとPOSTリクエストを使い分けてリクエストパラメータとして値をサーバーに送り、サーブレットで受け取った値を取得します。

 

第6章 MVCモデルと処理の遷移

MVCモデルとはModel・View・Controllerの3つに役割を分けて作るアプリケーションの構造のことです。フォワードやリダイレクトを使って処理をクラスからクラスへ移動します。

 

  • モデル(Model) アプリケーションの主たる処理やデータの格納などを行う
  • ビュー(View) ユーザーに対して画面の表示を行う
  • コントローラ(Controller) ユーザーからの要求を受け取り、処理の実行をモデルに依頼し、その結果をビューに依頼する

 

第7章 リクエストスコープ

スコープとはインスタンスを保存する領域のことです。サーブレットクラスやJSPファイルでインスタンスをやり取りする際に利用します。スコープで使用するインスタンスはJavaBeansと言うクラスの中に作ります。リクエストスコープ、セッションスコープ、アプリケーションスコープの違いは保存する期間が違います。リクエストスコープで保存したインスタンスはレスポンスが返されると消滅します。

 

第8章 セッションスコープ

セッションスコープはブラウザを閉じるとインスタンスが消滅します。セッションスコープに保存したインスタンスはリクエストを跨いで使用できますが、セッションスコープはブラウザごとにセッションIDが作成されるのでブラウザ間でのインスタンスの利用はできません。

 

第9章 アプリケーションスコープ

アプリケーションスコープはWebアプリケーションが終了するまで利用できます。サーバーを停止か再起動した際にインスタンスが削除されます。全ユーザーでインスタンスを共有できます。

 

第10章 アプリケーションの作成

ログイン機能、ログアウト機能、投稿機能、閲覧機能を持つWebアプリケーションを作成します。この章は一気に開発するプログラムが増えるので一回で理解するのは困難ですが、アプリケーション作成に慣れることができる章です。

 

第11章 サーブレットクラスの実行のしくみとフィルタ

initメソッド、destroyメソッド、リスナー、フィルタに関して学びます。

 

  • initメソッド サーブレットクラスがインスタンス化した際に最初に実行されます。
  • destroyメソッド サーブレットクラスのインスタンスが破棄される直前に実行されます。
  • リスナー イベントに応じてメソッドを実行できる特殊なクラスです。
  • フィルタ サーブレットクラスごとに共通の処理をさせることができる特殊なクラスです。

 

第12章 アクションタグとEL式

アクションタグ Javaのプログラムを呼び出すことができるJSPのタグです。動的インクルードは標準アクションタグの一つでJSPの中からJSPを呼び出すことができます。

EL式 ${属性名.プロパティ} スコープに保存したインスタンスを容易に呼び出すことができる記述方法です。

JSTL Java Sever Pages Standard Tag Libraryの略です。JSTLJSPの標準としてまとめられてる第三者が開発できるカスタムタグの5つのタグライブラリのことです。

 

第13章 JDBCプログラムとDAOパターン

DBMSと言うソフトウェアを使ってデータベースを管理します。データベースとのやり取りはJDBCドライバを利用します。JDBCドライバとはJava Data Base Connectivity Driverの略でデータベースを操作するために必要なクラスやインターフェースをまとめているライブラリです。DAOとはData Access Objectの略で、データベースの操作を担当するクラスのことです。

 

第14章 Webアプリケーションの設計

最終章です。要件と設計の作り方を学び、ログイン機能とユーザ登録機能がある簡易的なショッピングサイトを作ります。

 

すっきりわかるシリーズは読み応えがあり面白かったですが、達成感よりも疲労感がすごいです。このシリーズを読み切るには(=javaに手を出すと同意)覚悟が必要です。