Javaデータアクセス実践講座 (DB Magazine SELECTION)
|
| 価格: | ¥ 2,730 1500円以上は送料無料 詳細 |
発送可能時期: 在庫あり。
販売、発送は Amazon.co.jp
商品の詳細
- Amazon.co.jp ランキング: #128172 / 本
- 発売日: 2008-02-28
- 版型: 単行本(ソフトカバー)
- 384 ページ
エディターレビュー
内容紹介
JavaによるDBプログラミングの基礎からSQLインジェクション対策まで徹底解説!
本書は、DBマガジンの人気連載を書籍化したものです。JavaによるDBプログラミングの
標準的な方法であるJDBCやO/Rマッピング、
現在主流のEJB3.0 Persistance
APIの使い方について徹底的に解説します。また、Java EEサーバーを使用した
DBプログラミングも取り上げています。さらに、Web-DBアプリケーションで問題となる
SQLインジェクションなどのセキュリティ問題や、パフォーマンスチューニング、
文字化けといった現場開発者の悩みどころと
なりやすい実用的な内容も積極的に
盛り込んでいます。JavaによるDBプログラミングのバイブルとなる1冊です!
内容(「BOOK」データベースより)
JDBCもEJBも一冊に凝縮。DBプログラミング全般をカバーする「これまでになかった」待望の最強実践書。月刊DBマガジンの超人気連載を書籍化。便利なiBATIS/S2Daoや標準O/Rマッピング仕様JPA、DBチューニング、SQLインジェクション対策まで余すところなく徹底解説。
著者略歴 (「BOOK著者紹介情報」より)
松信 嘉範
MySQL株式会社所属シニアコンサルタント。パフォーマンスチューニング、データベース管理、レプリケーション、データベース設計、カスタムのストレージエンジンの開発といった、MySQLに関するコンサルティング業務全般に主に従事(本データはこの書籍が刊行された当時に掲載されていたものです)
カスタマーレビュー
Java+MySQLの技術を知るのに最適
本書が想定する読者の知識、経験は若干高く
1データベース、特にMySQLの利用経験。SQLの知識が必須。
2JavaはJSP/サーブレットの基礎を習得済み
3XMLの基礎知識
というレベルが妥当です。
「JDBCも少しだけ知った今、次にO/Rマッピング利用のためのフレームワーク、さらにEJB、JPAについて知りたい」という時、本書は役に立ちます。
本書は構成がしっかりしていて、順に読むとここ数年のデータアクセスのための技術の変遷がよくわかります。その説明はさすが技術情報誌に連載していただけあり、手慣れたものを感じさせ明快です。
ただし、本書に限らずこの種の技術書はミスが避けられないようです。なかでも特に知らないと時間をとられそうな内容を2点、以下に指摘します。本書を購入する方の参考になれば幸いです。
(なお私の手元にあるのは初版です。)
1.Chapter9のJPAとHibernateをセッティングする説明の部分で、クラスパスに通すべきjarファイルが足りない。本書の紹介分に加え、以下のファイルを追加する必要がある。
Hibernate EntityManagerのlibディレクトリ内から
1 hibernate-core.jar
2 hibernate-commons-annotations.jar
SLF4J(ダウンロード先 http://www.slf4j.org)から
3 slf4j-api-x.x.x.jar(Hibernate Core のlib/requiredにもある)
4 slf4j-jcl-x.x.x.jar
SLF4JはApache Commons Loggingの後継。WindowsXPの環境では、どうしても4のファイルまで本書のサンプルを動かすには必要な様子。
2.Chapter12のKuina-Daoのサンプルコードはこのままでは動かない。理由はGenericDaoインタフェースのfindメソッドの引数名が(Seasar2独自の機能Diiguにより)「id」に限定されるが、異なる引数名でメソッドを使用しているため。 対処として以下のいずれかが考えられる。
1 GenericDaoで提供されるカスタムメソッドの利用
GenericDaoを継承するDaoインタフェースに、使用するエンティティクラスのプロパティ名を引数に持たせたfind(プラス何かの名前の)メソッドを定義する。
本書では「ProductDao」インタフェースにpublic Product find(String code); とメソッドを追加する。
2 エンティティクラスのプロパティ、アクセサの修正
もしくはエンティティクラスの主キー列に対応するプロパティの宣言、アクセサの設定を「id」に変更する。
本書では「Product」クラスの「code」プロパティとそのsetter/getterを「id」に修正する。
なお本書にはLIKE検索の箇所で同じ理由による誤りがあるので注意。
最後に、個人的にはSeasar2のKuina-Daoに魅力を感じました。著者にも恐らく「今はこれが最前線」という確信があるのでしょう。SeasarはJPAを取り込み、利便性でまだEJBの先を行っていると思わされました。
良書
いい本です。読むのにある程度のプログラミングスキルは要求されますが普通のプログラマーなら大丈夫です。特に記述やサンプルプログラムがポイントを押さえつつも冗長でない所がいいです。もちろん本書で全てを網羅するものではありませんが入門書かつ実践書として買ったのは正解でした。
他のレビューに間違い指摘がありますがもう一つ。P122,Chapter4のLIST11 ProductServlet.javaでProductServiceというクラスが出てきますがこれはProductLogicのことですね。恐らくわかりやすいようにリネームしてコードの方を変更し忘れたのでしょう。





