更新情報(2008年度版)(更新中)

正誤表も参照してください。

動作確認ソフトウェア

動作を確認しているソフトウェアは以下の通りです。

Windows XP ProfessionalGNU/LinuxMac OS X 10.4.11
Firefox2.0
JDK6u101.5.0_13(OSに付属)
XAMPP1.6.4(1.6.5と1.6.6, 1.6.6aは不可)1.6.60.7.2
Tomcat6.0.14 (XAMPP add-ons)6.0.16
MySQL Connector/J5.1.6
EclipseEclipse IDE for Java EE Developers 3.3.2

開発環境の構築

本書で利用している各種ソフトウェアは、本書の出版後にアップデートされています。そのため、本書の記述の一部は現状に合っていません。現状に合わせるための情報を以下にまとめました。

Windows VistaおよびXP
P.180FirefoxのアドオンのURLが変わっています。(ちなみに、プラグインと拡張機能をあわせてアドオンと呼ぶようになりました。)
P.180HTML Validatorでは、「HTML Tidy」と「SGML Parser」に加えて、「併用」というオプションが追加されました。
P.181JDK:java.netからWindows Offline Installation, Multi-language JDK fileをダウンロードします。
P.183XAMPP for WindowsはSourceForge.netからバージョン1.6.4をダウンロードします(1.6.5と1.6.6, 1.6.6aは、コマンドプロンプト上のmysqlが文字化けします)。Windows add-ons Tomcatもここからダウンロードできます。
P.184XAMPPの設定画面では「日本語」を選んでかまいません。
P.187MySQL Connector/JはMySQL Developer Zoneからzipファイルをダウンロードし、ファイルに含まれるmysql-connector-java-バージョン番号-bin.jarを%CATALINA_HOME%\libにコピーします。
P.188jstl.jarとstandard.jarは%CATALINA_HOME%\libにコピーします。
P.188Eclipseのインストール手順は次の通りです。
  1. Eclipse本体:ダウンロードサイトから、Windows用の「Eclipse IDE for Java EE Developers」をダウンロード・展開します。
  2. 日本語化:Eclipse Japan WGの説明に従ってください(P.194のProperties Editorのインストールと同様ですが、URLが「http://download.eclipse.org/technology/babel/update-site/」になります)。
P.193EclipseにTomcatを登録する際には、「Apache Tomcat v6.0」を選択します。
P.194プロキシ・サーバは、Windows(Macの場合はEclipse) → Preferences → General → Network Conectionsで設定できます。
Mac OS X
P.208XAMPPはインストーラ付きのパッケージも用意されています。
P.209毎回手動でXAMPPを起動するなら、「OSの起動時にXAMPPも起動するように設定」する必要はありません。
P.210TomcatはApache Tomcatから、Tomcat 6.xのCore: tar.gzをダウンロードし、書籍の通りにTomcatをインストールします。
P.210MySQL Connector/JはMySQL Developer Zoneからtar.gzファイルをダウンロードし、次のようにインストールします。
tar zxf mysql-connector-java-5.1.6.tar.gz
cp mysql-connector-java-5.1.6/mysql-connector-java-5.1.6-bin.jar /Applications/xampp/xamppfiles/tomcat/lib/
rm -rf mysql-connector-java-5.1.6
P.210JSTLは次のようにインストールします。
cp /Applications/xampp/xamppfiles/tomcat/webapps/examples/WEB-INF/lib/* /Applications/xampp/xamppfiles/tomcat/lib/
P.210Eclipse:ダウンロードサイトから、Mac OS X用の「Eclipse IDE for Java EE Developers」をダウンロードし、次のように展開します(日本語化は上述のWindowsの場合と同様に行います)。
tar zxf eclipse-jee-europa-winter-macosx-carbon.tar.gz -C /Applications/
sudo /Applications/eclipse/eclipse」で起動します。
P.210Mac版Eclipseの設定項目はWindows版と同じですが、設定画面に行く方法は「Windows → Preferences」ではなく「Eclipse → Preferences」です。

補足事項

第1章 本書の目指すもの

P.10 参考

文献[96]はASP.NETを使ったウェブアプリ開発の入門書です。本書の前に読むとウェブアプリ開発の雰囲気をつかめます。

第3章 ウェブページの書き方1

P.16 3.1 ウェブブラウザ—Firefox

WindowsとMac OSのユーザには、Safariも有用です。設定メニューの「詳細」タブで、「開発」メニューを表示させるようにしておくと、ウェブアプリ開発のためのさまざまな機能を利用できるようになります。

第4章 ウェブページの書き方2

P.35 より詳しく知りたいときは

いきなり実例を読むのは難しいという場合は、文献[61,97]のような解説が助けになります。(文献[97]については下記追加文献を参照。)

第5章 データの送信

P.37

Windows上でTomcatを起動するには、C:\xampp\tomcat_start.batを実行します(停止はC:\xampp\tomcat_stop.batです)。スタートメニューのApache Friends → XAMPPからも起動・停止できます。

第6章 ダイナミックなページ生成

P.47 6.1.3 JSP版HelloWorldの実行

Tomcatの初期設定が変わったため、図6.6のようなファイルの一覧は表示されなくなっています。そこで、HelloWorld.jspの起動方法の一部を以下のように変更してください。

ファイル一覧を表示させたいときは、Eclipseのプロジェクト・エクスプローラでServersを展開、web.xmlを開き、パラメータlisteningの値をtrueにします($CATALINA_HOME/conf/web.xmlを編集してもかまいません)。

第7章 データベースの操作1

P.63

GNU/LinuxのシェルからMySQLに接続する場合、日本語が入力できない(エディタで書いてコピーもできない)可能性があります。解決方法はp.75に書いてあります(「edit」「\e」と入力すると、環境変数EDITORで設定したテキストエディタが起動します)。

第8章 データベースの操作2

P.75

「SET NAMES cp932;」の代わりに「charset cp932」とすることもできます(Connection Character Sets and Collationsを参照)。

P.99

SQLが宣言的な言語であることを説明する一つの例として、文献[98]があります。(文献[98]については下記追加文献を参照。)

P.106 SQL

SQLについて、その使い方だけでなく原理も説明しているものとして追加文献[100]があります。リレーショナル・データベースの理論について正確に学びたい場合には、この文献の後で追加文献[101]を読むとよいでしょう。文献[100]は文献[7]の入門としても使えます。

P.106 パフォーマンス・チューニング

MySQLの設定ファイルによる主な違いをまとめました(InnoDBについては省略)。

smallmediumlargehuge
想定される主記憶<=64M32-64512M1G-2G
key_buffer_size16K16M256M384M
myisam_sort_buffer_size8M8M64M64M
net_buffer_length2K8K16K16K
open_files_limit5005006221134
query_cache_size0016M32M
read_buffer_size256K256K1M2M
read_rnd_buffer_size256K512K4M8M
sort_buffer_size64K512K1M2M
table_cache464256512
thread_cache_size0088
thread_stack64K192K192K192K

第9章 データベースへの接続

より詳しく知りたいときは

本書で紹介したJavaからRDBを操作する方法は、JDBCを用いるという最も基本的な方法です。O/Rマッピングなどの高度な方法について知りたい場合には、下記追加文献[99]が参考になるでしょう。

第10章 ウェブアプリの例

P.124

Tomcat 6の場合、手順3の結果は次のようになります。

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="manager"/>
  <user username="xampp" password="xampp" roles="manager"/>
</tomcat-users>

第11章 Model, View, Controller

P.141 より詳しく知りたいときは

ウェブアプリの枠組みとして広く使われているのはMVCだけではありません。興味のある方は、ASP.NETなどを試してみるといいでしょう(下記文献[96]を参照してください)。

付録B 文字コード

P.168

5078.Adobe-Japan1-6.pdfが更新されています。新しいファイル古いファイル)。Font technical notesを参照してください。

P.168 Shift_JISとWindows-31J

Shift_JISとWindows-31Jの違いについては、MySQLのマニュアルでも解説されています(cp932のキャラクタセット)。

参考文献

[4]橋本英彦訳. http://www.studyinghttp.net/rfc_ja/rfc3986.(URLが変わりました。)
[8]ミック訳. SQLパズル. 翔泳社, 第2版, 2007. (翻訳されました。)
[15]橋本英彦訳. http://www.studyinghttp.net/rfc_ja/rfc2616.(URLが変わりました。)
[18]株式会社ロングテールほか訳. 詳説 正規表現. オライリージャパン, 第3版, 2008.(翻訳が改訂されました。)
[41]Bates, Basham. Head First Servlets & JSP. Oreilly & Associates Inc., 2nd edition, 2008.(改訂されました。)
[55]Baron Schwartz et al. High Performance MySQL. Oreilly & Associates Inc., 2nd edition, 2008.(改訂されました。)
[56]きしだなおき. 創るJava—NetBeansでつくって学ぶ Java GUI & Webアプリケーション. 毎日コミュニケーションズ, 改訂第2版, 2008.(改訂されました。)
[58]益子貴寛. Web標準の基礎と実践, http://itpro.nikkeibp.co.jp/article/COLUMN/20070330/267032/, 2007.(更新されました。)
[76]大藤幹. 詳解HTML & XHTML & CSS辞典. 秀和システム, 第3版, 2007.(改訂されました。)
[90]大垣靖男. Webアプリセキュリティ対策入門. 技術評論社, 2006.(本文 p.141)
[91]徳丸浩. 狙われるWebアプリケーション. http://itpro.nikkeibp.co.jp/article/COLUMN/20070401/267074/, 2007.(本文 p.141)
[92]佐藤匡剛. Listインターフェイスの3つのクラスを理解する. http://www.atmarkit.co.jp/fjava/javatips/136java026.html, 2005.(本文 p.215)
[96](追加)矢吹太朗. プログラムを作ろう!Microsoft Visual Web Developer 2008 Express Edition入門. 日経BPソフトプレス, 2008.
[97](追加)大藤幹. 世界の「最先端」事例に学ぶCSSベスト・プラクティス. 毎日コミュニケーションズ, 2007.
[98](追加)矢吹太朗. 動的SQLによる数独の超高速解法. CodeZine, 2007.
[99](追加)松信嘉範. Javaデータアクセス実践講座. 翔泳社, 2008.
[100](追加)ミック. 達人に学ぶ SQL徹底指南書. 翔泳社, 2008.
[101](追加)C. J. Date. Database in Depth. Oreilly & Associates Inc., 2005. クイープ訳. データベース実践講義. オライリージャパン, 2006.