書籍詳細(10日でおぼえるJSP/サーブレット入門教室)

10日でおぼえるJSP/サーブレット入門教室 書影

ISBN: 4-7981-0189-3

10日でおぼえるJSP/サーブレット入門教室

山田祥寛 著

サポート終了
著者山田祥寛
出版社翔泳社
価格2,800円(税別)
判形B5変版・2色
ページ数470ページ
付属CD-ROM 1枚
発売日2002年5月17日
シリーズ 10日でおぼえる
対象レベル入門

改訂版が刊行されています。詳細はこちらをご覧ください。

Java知識ゼロからはじめる入門書

段階を追ってJSP/サーブレットを懇切丁寧に説明してあります。
レッスンで取り上げているサンプルは、簡単ですがすぐに使える便利なものばかりです。
1レッスンごと実際に自分でサンプルを作って、動かしてもらいます。
解説を読んで内容を理解したら、本書の通りに実践して基本知識とテクニックをがっちり固めます。
10日でおぼえるJSP/サーブレット入門教室 ロゴ

更新履歴

  • FAQ情報:2004年7月21日 更新
  • 正誤訂正:2005年3月2日 更新

目次

  • 第1日目:JSPの基本的な構造を学ぼう
  • 1時限目:おぼえようJSPの基本
  • 2時限目:繰り返し処理を構築してみよう(1)
  • 3時限目:フォームからの入力を受け取ろう
  • 4時限目:繰り返し処理を構築してみよう(2)
  • 第2日目:ユーザリクエストの処理を学ぼう
  • 1時限目:クエリ情報を活用してみよう
  • 2時限目:ヘッダ情報を取得してみよう
  • 3時限目:クッキーを活用してみよう
  • 第3日目:クラスで拡がるJSPの世界<基本篇>
  • 1時限目:HTMLの予約文字をエンコードする
  • 2時限目:日付の計算をしてみよう
  • 3時限目:連想配列を活用してみよう
  • 第4日目:クラスで拡がるJSPの世界<正規表現・ファイル篇>
  • 1時限目:正規表現検索に挑戦しよう
  • 2時限目:テキストファイルを読み取ってみよう
  • 3時限目:カスタムログを記録しよう
  • 第5日目:XML+XSLT/DOMでより高度なデータ処理
  • 1時限目:XSLTを使ってXML文書を表示しよう
  • 2時限目:DOMでXMLからデータを抽出してみよう
  • 3時限目:DOMでXML文書を編集してみよう
  • 第6日目:JDBCでカンタン データベース連携<基本篇>
  • 1時限目:データベースに新規データを登録する
  • 2時限目:データベースを検索してみよう
  • 3時限目:データベースのデータを更新、削除する
  • 第7日目:JDBCでカンタン データベース連携<応用篇>
  • 1時限目:データベースアクセスを効率化しよう
  • 2時限目:データベースの構造情報を参照しよう
  • 3時限目:データベースからデータをダウンロードする
  • 第8日目:サーブレット技術の基本的な構造を学ぼう
  • 1時限目:おぼえようサーブレットの基本
  • 2時限目:HTMLからサーブレットを呼び出そう
  • 3時限目:サーブレットから外部リソースを扱ってみよう
  • 第9日目:JavaBeans導入でWeb開発の効率化
  • 1時限目:サーブレットからJava Beansを呼び出そう
  • 2時限目:Beansからサーブレットにデータを渡そう
  • 3時限目:JSPからJava Beansを呼び出そう
  • 第10日目:カスタムタグ、フィルタによる開発・運用の効率化
  • 1時限目:タグライブラリを利用しよう
  • 2時限目:オリジナルのタグを作成してみよう
  • 3時限目:フィルタでログ収集をしてみよう
  • 付録
  • 練習問題解答
  • 索引
  • 50音順索引

正誤表

該当頁 該当箇所 修正刷
訂正箇所 訂正事項 更新日
Orientation p.42 第0日 ④環境変数を設定する スクリプト3行目 2刷
# export CLASSPATH==.:$TOMCAT_HOME~ # export CLASSPATH=.:$TOMCAT_HOME~ 2002/06/03
Orientation p.34 MySQLを起動する 4行目 2刷
[OK]ボタンをクリックします [Cancel]ボタンをクリックします 2002/06/23
p.13 【p_intro.jsp】スクリプト2行目 7刷
buffer="8"  buffer="8kb"
Tomcat4.1以降をお使いの場合はkbを追記してください)
2003/11/20
p.22 4行目 doble型のサイズ5の説明 4刷
double[] dblNum=new double[4] double[] dblNum=new double[5] 2002/10/17
p.27 【err.jsp】スクリプト2行目 2刷
Shift_JIS" import="java.io.*"isErrorPage="true" Shift_JIS" import="java.io.*" isErrorPage="true" ←isErrorPageの前にスペースを入れてください 2002/06/24
p.32 (4)チェックボックス (ソース下のスクリーンショット) 2刷
チェックのあるもの オレンジ チェックのあるもの オレンジ、りんご 2002/06/24
p.52 【p1_kuku.jsp】スクリプト20行目 5刷
if(I*j>40){bresk;} if(I*j>40){break;} 2003/02/13
p.67 【headers.jsp】5~6、19~20行目 2刷
5 </head>
6 <h1 style="background:#cccccc">ヘッダ情報の取得</h1>
(中略)
19 </table>
20 </html>
5 </head>
<body> ←1行追加
6 <h1 style="background:#cccccc">ヘッダ情報の取得</h1>
(中略)
19 </table>
</body> ←1行追加
20 </html>
2002/07/05
p.68 表中のヘッダ名  2刷
reffer referer 2002/06/24
p.71 3行目 6刷
15 <% out.print("strNam"); %> </th> 15 <% out.print(strNam); %> </th> ←「"」をとる 2003/07/17
p.73 【p1_lang.jsp】スクリプト1行目 2刷
<%@page contentType="text/html;charset=Shift_JIS" "%> <%@page contentType="text/html;charset=Shift_JIS"%> 2002/06/24
p.99 lastIndexOfメソッドの構文 -
Stringオブジェクト.IndexOf(部分文字列[,検索開始位置]) Stringオブジェクト.lastIndexOf(部分文字列[,検索開始位置]) 2004/08/17
p.112 【p_birth.jsp】 スクリプト35~37行目 2刷
35 <body onload="alart(\\'<%=strMsg %>\\')">
36 </head>
37 <body>
35 </head>
36 <body onload="alart(\\'<%=strMsg %>\\')">
37 削除してください
2002/06/21
p.154 【p_addrec.jsp】スクリプト23行目 4刷
response.sendRedirect("p1_addrec.html"); response.sendRedirect("p_addrec.html"); 2002/12/04
p.156 第5日1時限目 サンプルファイルはこちら 2刷
table.xsl list.xsl 2002/05/30
p.159 【xslt.jsp】スクリプト5行目 6刷
~day05-1/table.xsl"); ~day05-1/list.xsl"); 2002/12/31
p.163 本文1行目 7刷
(現在は1.1です) (現在は1.0です) 2003/10/19
p.163 本文下から2行目 7刷
<address>要素がルート要素であり、 <addbook>要素がルート要素であり、 2003/10/19
p.166 4 JSPでXSLT変換を行う手順 スクリプト5行目 7刷
~day05-1/table.xsl"); ~day05-1/list.xsl"); 2003/10/16
p.169 ヒント スクリプト5行目 6刷
table.xslは本文で~ list.xslは本文で~ 2002/12/31
p.177 Nodeオブジェクトのメソッド一覧表 (2つ目のメソッド名) 6刷
geLastChild getLastChild 2002/12/31
p.210 【p_softDsc.jsp】スクリプト3行目 6刷
String id=;[⑦]; String id=[⑦]; 2003/01/31
p.224 【prepare.jsp】30~31行目 3刷
30 %>
31 </body>
30 %>
</table> ←1行追加
31 </body>
2002/10/26
p.233 【p_prepare2.jsp】スクリプト20行目 -
~getParameter("id" + i )) ~getParameter("id" + i )); ←末尾にセミコロンを追加 2004/08/09
p.285 【p1_srv_reader.java】スクリプト6行目 6刷
6 public class srv_reader extends HttpServlet { 6 public class p1_srv_reader extends HttpServlet { 2002/12/31
p.295 【bean_dbInsert.java】スクリプト7行目 (P.297解説部も同様) 6刷
public void bean_dbInsert(){} public bean_dbInsert(){} 2003/02/19
p.322 【bean_dbSeach.java】スクリプト8行目 2刷
private ArrayList private ArrayList result; 2002/06/20
p.328 【p_dbMvc.jsp】スクリプト15行目 6刷
15 <td><%=dbb.getId(i)></td> 15 <td><%=dbb.getId(i)%></td> 2002/12/31
p.344 【text2table.java】スクリプト11~13行目 -
11  String file = "";
12  String titleColor = "#FFffCC";
13  String dataColor = "#FFffFF";
11  private String file = "";
12  private String titleColor = "#FFffCC";
13  private String dataColor = "#FFffFF";
2005/03/02
p.350 手順4 属性値をセットする 本文解説、スクリプト内の行番号 -
 10~12、43~45行目に注目してください。

10 private String file = "";
11 private String titleColor = "#FFffCC";
12 private String dataColor = "#FFffFF";
・・・
43 public void setTitleColor(String titleColor){this.titleColor=titleColor;}
44 public void setDataColor(String dataColor){this.dataColor=dataColor;}
45 public void setFile(String file){this.file=file;}
 11~13、45~47行目に注目してください。

11 private String file = "";
12 private String titleColor = "#FFffCC";
13 private String dataColor = "#FFffFF";
・・・
45 public void setTitleColor(String titleColor){this.titleColor=titleColor;}
46 public void setDataColor(String dataColor){this.dataColor=dataColor;}
47 public void setFile(String file){this.file=file;}
2005/03/02
p.353 【p__txetWriter.jsp】スクリプト14行目 6刷
14 String[] srtElm={"no","nam","sex","old","tel","add"}; 14 String[] srtElm={"no","nam","sex","tel","add"}; 2002/12/31
p.358 【logFilter.java】スクリプト13行目 6刷
13 ~ServletContext=config.getServletContext(); 13 ~ServletContext context=config.getServletContext(); 2002/12/31
p.405 第9日3時限目練習問題の解答 6刷
p_Mvc.jspは~ p_dbMvc.jspは~ 2002/12/31
p.409 第10日3時限目練習問題の解答 6刷
mysql > SELECT * FROM log-rec; mysql > SELECT * FROM log_rec; 2002/12/31

FAQ

バージョンアップに伴い、無名ユーザでのパスワード設定が不可となりました。そのため、MySQL4.0.20を使用する場合、パスワード設定はrootユーザでないと実行できなくなります。
パスワード設定をする場合は、コマンドプロンプトから、以下のように入力してください。
=======================================================
> C:\mysql\bin\mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
…(中略)…
mysql> SET PASSWORD FOR root@localhost=PASSWORD('root');←【パスワードを設定】

更新日: 2004.07.21

Tomcat4.1.12以降で無名サーブレット(web.xmlに明示的に登録しないサーブレット)がデフォルトで無効に変更されています。
Conf/web.xmlの以下の箇所のコメントアウトを外してください。
<!-- ←削除
<servlet>
  <servlet-name>invoker</servlet-name>
  <servlet-class>
   org.apache.catalina.servlets.InvokerServlet
  </servlet-class>
  <init-param>
    <param-name>debug</param-name>
    <param-value>0</param-value>
  </init-param>
  <load-on-startup>2</load-on-startup>
</servlet>
--> ←削除
・・・(中略)・・・
<;!-- ←削除
<servlet-mapping>
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
-->  ←削除

更新日: 2004.02.16

以下のサイトがお役に立つかもしれません。
参考になさってみてください。
http://www.bitlink.co.jp/server/win_mysql.htm

更新日: 2003.11.20

RedHatにCコンパイラ関係のモジュールがインストールされていないようです。
以下のURLを参考になさってみてください。
 http://www.kt.rim.or.jp/~nozawat/gcc.html

更新日: 2003.07.27

mod_webappsの正式サポートが4.0.2からWindows版では外れました。
環境によってはmod_webapp より mod_jk2を使用するか、Tomcat単体で使用なさったほうが良いかもしれません。
Mod_jk2によるApache連携方法については以下のサイトをご参照ください。

Windows:
https://wings.msn.to/index.php/-/B-08/jsp_win_connector/

Linux:
https://wings.msn.to/index.php/-/B-08/jsp_lin_connector/

更新日: 2003.03.21

Tomcat 4.1.12からはInvokerServletがデフォルトで無効になっております。
http://jakarta.apache.org/site/news.html
24 September 2002 - Security updates: Tomcat 4.1.12
Stable and Tomcat 4.0.5 Released
が参考になります。

更新日: 2002.12.04

以下の内容を試してみてください。
c:\mysql\binへのパスが通っているか確認してください。
my.ini、my.cnfの設定を行ってください(本書コラムP.243参照)。
二度目以降の展開に際しては、一度データベースをDROPしてください(さもないと、既に存在している旨がエラー表示されます)。
また、以下のサイトも参考になりますので、MySQLの基本的なオペレーションを知りたい方は併せて参照ください。
http://homepage1.nifty.com/gak/webdb/mysql.html

更新日: 2002.10.26

J2SEには確かにServletAPIが入っていませんが、代わりに Tomcatにservlet.jarが含まれています。
servlet.jarへのCLASSPATHがきちんと通っているかどうか確認してみてください。

更新日: 2002.10.19

> mysqladmin -u root -p DROP xxxx (xxxxはデータベース名を入力)で一度データベースを削除してから再度データを展開してみてください。

更新日: 2003.06.04

MySQLのデフォルトの文字コードがLatin1という欧米系の文字コードであるため、環境によっては文字化けが発生したり、データを正常にインポートできないことがあります。
Windowsの場合はシステムフォルダ配下の「my.ini」、Linuxの場合は「/etc/my.cnf」に以下のコードを追加し文字コードを明示的に指定してください。

[mysqld]
default-character-set=sjis
[mysql]
default-character-set=sjis
(Linuxの場合はsjisの部分をujisとしてください。)

以下のサイトも参考になりますので、ご参照ください。
http://www.kent-web.com/pubc/jcode/

更新日: 2002.06.24

MySQLを起動してから、確認をおこなってください。

更新日: 2003.11.07

c:\windows配下のautoexec.batというファイルを編集します。エディタ(メモ帳など)で開いて、autoexec.batの末尾に、各環境変数と値を入力してください。環境変数が「JAVA_HOME」、設定したい値が「c:\j2sdk1.4.1_02」のときは、
SET JAVA_HOME=C:\j2sdk1.4.1_02
と入力します。他の環境変数も同様に追加してください。
すべて追加したら、OSを再起動してください。

更新日: 2003.04.10

第0日lページのようにhttpd.confを編集をしている(jsp10を入れている)かど うかご確認ください。

更新日: 2002.06.12

S-JIS表示の場合「ソ」「表」「能」などは2バイト文字の後ろ側が「\」なので、エスケープしないと文字化けしてしまいます。「ソ\フト」「芸能\人」というように入力すれば正しく表示されます。
以下のサイトも参考になりますので、ご参照ください。
http://www.kent-web.com/pubc/jcode/

更新日: 2002.11.18

Utilityタグライブラリは現在「非推奨」の扱いとなり、現バージョンでは動作できないようです。
同じような機能としては、Commons Validatorなどがあります。
http://jakarta.apache.org/commons/validator/index.html

更新日: 2003.07.23

お問い合わせ

書籍に関するご質問や誤りのご報告、ご意見・ご感想などをお寄せください。

Powered by メールフォーム 『オレンジフォーム』