SBクリエイティブ

Eclipseで学ぶはじめてのサーブレット&JSP

木村 聡:著者

HTTP通信の基礎から簡易twitterアプリ開発まで。
Webアプリケーション・プログラミングの基本を一冊に凝縮。
Servlet3.0に対応。
Java6とJava7による動作確認済み。

●以下「はじめに」から抜粋
本書は、Javaでのサーバーサイドプログラミングを基礎から学ぶための入門書です。

Webアプリケーションを作るために単にServletAPIの使い方を学ぶための本ではなく、Javaという言語に限らず必須となるHTTPの知識など、「基礎となる知識や考え方をきちんと学べるよう」に意識して執筆しました。

これまでWebアプリケーションを作ったことがないプログラマーを想定し、

・HTTP
・HTML
・ServletAPI 3.0(Servlet、JSP など)
・データベースアクセス(JDBC)
・Ajax

と、Javaに限らないWebアプリケーション開発者の基礎知識(HTTPプロトコル)から、近年ではWebアプリケーション開発には必須の知識となっているAjaxまでを幅広く説明しています。ただし、すべての事柄を説明するには書籍として数冊のボリュームとなるため、HTMLやAjaxなどについては手引きとなる程度の内容にとどめています。

近年のWebアプリケーション開発において、Webアプリケーションフレームワークを利用しないことは考えられないものとなっていますが、これらのフレームワークもまた本書で説明するServletAPIなどをベースに作られています。つまり、フレームワークを利用し表面的にServletAPI のことを意識せず開発を行ったとしても、実際にはServletAPIを利用しているということになります。開発中に困ったことがあったときにも、ServletAPIなどの基礎知識があれば、解決の糸口が見つけやすくなります。そういった意味でも、Webアプリケーションの開発には、ServletAPIに限らず、HTTPなど、サーバーサイド技術の知識は必須となります。

本文中には「個々の技術の説明」と対になるなる形で、「サンプルコードと、実行結果のキャプチャ」を載せています。さらに、本書の応用編では、それまで説明した技術の集大成としてとして「簡易Twitterアプリケーション」を作成します。この簡易Twitterアプリケーションのサンプルコードも含めたすべてのサンプルコードは、サポートサイトからダウンロードできるようになっています。これらはEclipseに取り込むことによって、簡単に実行することが可能です。

実際にプログラムを動かしながら学習を進めていくことで、より理解が進むでしょう。

百聞は一見にしかず。実際に動くプログラムで動作を確認し、体感することで理解できるように構成しました。

■第1章 Webアプリケーション概要
1-1 Webアプリケーションの特徴
1-2 HTTPプロトコルとは
1-2-1 ブラウザとWebサーバーの間の通信
1-2-2 HTTPメッセージ
1-3 アプリケーションサーバー
1-4 JavaEEとは
1-5 まとめ
1-6 クイズ

■第2章 はじめてのServlet/JSP
2-1 Servletとは
2-2 JSPとは
2-3 Hello, World!の作成
2-3-1 ServletでHello, World!
2-3-2 JSPでHello, World!
2-3-3 ServletとJSPを組み合わせてHello, World!
2-4 Webアプリケーションの構成
2-4-1 フォルダ構成
2-4-2 MVCモデル
2-5 ServletAPI入門
2-5-1 HttpServlet
2-5-2 HttpServletRequest
2-5-3 HttpServletResponse
2-5-4 HttpSession
2-5-5 ServletContext
2-5-6 PageContext
2-5-7 Webアプリケーションのスコープ
2-6 まとめ
2-7 クイズ

■第3章 JSPの詳細を学ぶ
3-1 JSPコメント(JavaServer Pages comment)
3-2 Javaのコードを記述する
3-2-1 JSP式(JSP expression)
3-2-2 スクリプトレット(scriptlet)
3-2-3 JSP宣言(JSP declaration)
3-2-4 JSP暗黙オブジェクト(JSP implicit objects)
3-3 EL式(Expression Language)
3-3-1 EL式の暗黙オブジェクト
3-3-2 JavaBeansと一緒に使う
3-4 JSTL(JSP Standard Tag Library)
3-4-1 coreタグライブラリ
3-4-2 fmtタグライブラリ
3-4-3 その他のタグライブラリ
3-4-4 functions関数ライブラリ
3-5 カスタムタグ
3-6 式言語関数の追加
3-7 JSPの構造
3-7-1 固定テンプレート
3-7-2 JSP式
3-7-3 スクリプトレット
3-7-4 定義
3-7-5 ディレクティブ
3-7-6 JSPタグ
3-7-7 カスタムタグ
3-7-8 式言語
3-8 まとめ
3-9 クイズ

■第4章 Webアプリケーションの具体的な仕組みを学ぶ
4-1 アノテーション
4-1-1 @WebServletアノテーションの要素
4-2 入力画面の仕組み
4-2-1 リクエスト情報(パラメータ)
4-2-2 日本語を入力する
4-2-3 GETとPOST
4-2-4 さまざまな入力項目
4-3 バリデーション
4-3-1 javax.validation
4-4 Filter
4-4-1 複数のFilterを設定する場合
4-4-2 Listener
4-5 ファイルアップロード
4-6 セッション
4-6-1 ステートレス/ステートフル
4-6-2 HttpSession
4-6-3 メリット・デメリット
4-7 リダイレクト
4-8 リロード対策(PRGパターン)
4-9 レスポンス
4-10 Content-Type一覧
4-11 クッキー
4-10-1 URLリライティング
4-12 JavaScriptとの連携(Ajax)
4-13 Servletのライフサイクル
4-14 まとめ
4-15 クイズ

■第5章 データベース操作を学ぶ
5-1 データベース入門
5-1-1 データベースとは
5-1-2 リレーショナルデータベースとは
5-1-3 リレーショナルデータベースの基本的な用語
5-2 DBの準備
5-2-1 HSQLDBの準備
5-2-2 HSQLDBの起動
5-2-3 HSQLDB Managerの起動
5-3 SQL入門
5-3-1 DDLとDMLについて
5-3-2 CREATE TABLE文
5-3-3 ALTER TABLE文
5-3-4 DROP TABLE文
5-3-5 INSERT文
5-3-6 SELECT文
5-3-7 UPDATE文
5-3-8 DELETE文
5-3-9 いろいろなSELECT文
5-4 DBの機能
5-4-1 コミット、ロールバックおよびトランザクション
5-4-2 ビュー
5-4-3 シーケンス
5-5 JDBC
5-5-1 java.sqlパッケージ
5-5-2 SELECT文
5-5-3 INSERT文
5-5-4 UPDATE文
5-5-5 DELETE文
5-6 SQLインジェクション
5-6-1 PreparedStatement
5-7 ロック
5-7-1 悲観的ロック
5-7-2 楽観的ロック
5-8 O/Rマッパー
5-9 DAOパターン
5-10 3層アーキテクチャ
5-11 まとめ
5-12 クイズ

■第6章 応用編(簡易Twitterアプリを作る)
6-1 Twitterとは
6-2 要件
6-3 開発工程
6-4 DBのテーブルの定義
6-5 トップ画面の仮実装
6-6 ユーザーの登録機能を実装
6-7 ログイン機能を実装
6-8 ログインユーザーの情報表示機能を実装
6-9 ユーザーのアイコン表示機能を実装
6-10 メッセージのつぶやき機能を実装
6-11 メッセージの表示機能を実装
6-12 スタイルシートの適用
6-13 ユーザー情報の変更機能を実装
6-14 ログアウト機能を実装
6-15 まとめ
6-16 応用問題

■クイズの答え
1-6 の答え
2-7 の答え
3-9 の答え
4-15 の答え
5-12 の答え

■付録1 各種設定
A1-1 Javaの準備
A1-2 Tomcatの準備
A1-3 Eclipseの準備
A1-4 HSQLDBの準備

■付録2 各種リファレンス
A2-1 本文では説明を省略したJSTL
A2-2 web.xmlについて
A2-3 よく利用するHTMLタグの概要

■付録3 その他の情報
A3-1 JSONについて
A3-2 Servletのライフサイクルについて

■著者紹介:木村聡(きむら・さとし)
1978年生まれ。宮城県出身。
2000年からおもにJavaでのシステム開発に携わり、現在はアーキテクトとして活動中。Javaでの開発で携わったシステムには、ひまわり証券株式会社の「インターネット証券デリバティブ取引システム」などがある。また、オープンソースのNPO法人Seasarファウンデーションのコミッターなども務めている。
著書には『Eclipseで学ぶはじめてのJava 第2版』『Javaフレームワーク開発入門』(ソフトバンククリエイティブ)、『Seasar 入門はじめてのDI&AOP』(ソフトバンククリエイティブ、共著)があり、そのほか、『CodeZine』『DB Magazine』(翔泳社)、『WEB+DBPRESS』(技術評論社)、『JavaWorld』(IDGジャパン)など雑誌への寄稿もある。

定価:3,143円(本体2,857円+10%税)

書籍情報

  • 発売日:2011年9月29日(木)
  • ISBN:978-4-7973-6259-6
  • サイズ:B5変/1色
  • ページ数:526
  • 付録:-

著者紹介

関連商品のご案内

もっと見る

試し読み新着お届け

もっと見る