翔泳社の公式通販SEshopは全国送料無料!
ヘルプ 新規会員登録 ログイン
SEshop

Javaデータアクセス実践講座

松信 嘉範(著)

商品番号
116020
販売状態
品切れ
納品形態
宅配便にてお届け
発売日
2008年02月27日
出荷開始日
2008年02月20日
ISBN
9784798116020
判型
A5
ページ数
384
キーワード
データベース  Java  開発

2,860円(税込)(本体2,600円+税10%)
送料無料

260pt (10%)
ポイントの使い方はこちら

初回購入から使えるポイント500円分プレゼント

現在、本商品は販売しておりません。

※1点の税込金額となります。 複数の商品をご購入いただいた場合のお支払金額は、 単品の税込金額の合計額とは異なる場合がございますので、予めご了承ください。

Java-DBプログラミングのすべてが分かる!

本書はJava言語によるDBプログラミングに焦点を当てた解説書です。DBプログラミングの標準的な方法であるJDBCやO/Rマッピング、現在主流のEJB 3.0 Persistence APIについて、基礎から使い方まで徹底的に分かりやすく解説しています。また、Java EEサーバーを使用したWeb-DBアプリケーションのプログラミング手法に加え、Web-DBアプリケーションで問題となりやすいSQLインジェクションなどのセキュリティ問題や、パフォーマンスチューニング、文字化けといった現場開発者の悩みどころとなりやすい実用的な内容も積極的に盛り込んでいます。JavaによるDBプログラミングのバイブルとなる1冊です!

本書は、DBマガジンの人気連載「Javaデータアクセス優先主義」を加筆/修正し、書籍としてまとめたものです。

Chapter 1 JavaによるDBプログラミングの概要

本書の概要
DBプログラミングの要点と課題
 O/Rマッピングによる対応付け
 O/Rマッピングにおける「インピーダンスミスマッチ」
 JDBC APIによるプログラミング
 O/RマッピングフレームワークによるDBプログラミング
 JDBCを知らなくて良いか?
DBプログラミングにおける設計パターン
 層に分けて開発する「レイヤアーキテクチャ」
データアクセス層を実装する「DAOパターン」
DBプログラミングで注意すべきこと
 パフォーマンスチューニング
 プログラミング上の作法
 トランザクション管理
 セキュリティ
 文字化け(日本語処理)

Chapter 2 JDBCによるDBプログラミング

JDBCのおさらい
 JDBCのバージョン
 JDBCドライバの入手
DBへの接続/切断プログラムの作成
 パッケージのインポート
 JDBCドライバのロード
 DBとの接続
 SQLExceptionの処理
 接続の終了処理
 動作確認
SQL文の実行プログラムの作成
 PreparedStatementの作成/実行
 Statementの作成/実行
 ResultSetとカーソル
 プログラムの動作確認
メタ情報の取得
RDBMSのパフォーマンスチューニング
トランザクション制御の基礎知識
 Javaによるトランザクション制御の実装
DBプログラミングでのチューニング技法
 トランザクション制御
 プリペアードステートメント
 バッチ更新
 フェッチサイズの設定とサーバーサイドカーソル

Chapter 3 SQLインジェクションの仕組みと回避方法

はじめに
SQLインジェクションによる攻撃の例
 攻撃例 1:WHERE条件の無効化による全件処理
 攻撃例 2:UNION句による任意のテーブルの検索
 攻撃例 3:任意のSQL文の付加
SQLインジェクション攻撃の防止法
 プリペアードステートメント
 文字列変数のエスケープ
 攻撃例 4:入力値のエスケープだけでは不十分な場合

Chapter 4 Java EE環境でのDBプログラミング

Java EEサーバーの特徴
 Webアプリケーションの特長
 Java EEサーバーの種類
 JNDIとデータソース
JBossのセットアップ
 JBossのダウンロードとインストール
 コンフィグレーション領域の作成
 JBossのMySQL対応の手順
 JBossの起動
 DBへの接続を確認する
Java EE環境でのチューニング技法
 コネクションプーリング
 プリペアードステートメントキャッシュ
サンプルプログラムの概要
 レイヤアーキテクチャと依存関係の整理
サンプルで学ぶWeb+DBプログラミング
 ドメインオブジェクトのProductクラス
 ビジネスロジック層のProductLogicクラス
 Daoクラスを使用したDBアクセス
 Web層における画面表示/制御のロジック
 JBossへのデプロイと実行
Webアプリケーションにおける排他制御
 Version Numberパターンによる排他制御
 Daoクラスの更新用メソッドの修正(LIST20)

Chapter 5 DIコンテナの概要と利用方法

DIコンテナの概要
 インターフェイスベースの設計と依存度
 DIコンテナの種類
Spring Frameworkを利用したサンプルプログラム
 Spring Frameworkを利用したプログラムの書き換え
 プログラムの書き換えによるメリット
DIコンテナとアスペクト指向(AOP)
 宣言型トランザクション機能とは

Chapter 6 ORMによるDBプログラミング(iBATIS編)

iBATISによるO/Rマッピング
 解説用テーブルとテストデータの作成
iBATISによる簡単なSQL文の実行
 設定ファイルの読み込み
SQL文の実行と1件の検索結果の取得
 Beanでの検索結果の取得
 複数件の検索結果の取得
トランザクション制御と更新系SQL文の実行
 複数のバインド変数の渡し方
 トランザクション制御
ジョインと動的SQL文の実行
 ジョインの記述
 条件別の動的SQL文の記述

Chapter 7 ORMによるDBプログラミング(S2Dao編)

S2Daoとは
 S2Dao実行環境のセットアップと解説用テーブルの作成
S2DaoによるDBプログラミング
 JavaBeanクラスの作成(LIST2)
 Daoインターフェイスの作成(LIST3)
 SQL文定義ファイルの記述(LIST4)
 業務ロジッククラスの作成(LIST5、LIST6)
 diconファイルの記述(LIST7、LIST8 )
 呼び出し元クラスの作成と実行(LIST9)
Version Numberパターンによる排他制御
 ジョインの実行

Chapter 8 EJB3 入門(1)―EJB3の基礎技術

EJB3はどこが変わったのか
GlassFishのセットアップ
 管理コンソールの操作
EJB3によるアプリケーション作成
 業務ロジッククラスの作成
 データアクセスクラスの作成
 サーブレットとweb.xmlの作成
 アプリケーションのパッケージング/デプロイ/実行
EJB3の技術解説
 リモートインターフェイスとローカルインターフェイス
 ステートレスセッションBeanとステートフルセッションBean
 宣言型トランザクションの利用

Chapter 9 EJB3 入門(2)―Java Persistence APIによる基本操作

JPAによるDBプログラミングの基礎
 Hibernateの入手
 エンティティクラスの実装
 呼び出し元クラスの実装
 EntityManagerの取得
 トランザクション制御
 検索結果の取得(SELECT文)
 永続オブジェクトの値操作(UPDATE文)
 新しい永続オブジェクトの登録(INSERT文)
 永続オブジェクトの削除(DELETE文)
 設定ファイル「persistence.xml」の記述
 Persistence Unitとは
 呼び出し元クラスの実行
JPAによるプログラミングTips
 永続オブジェクト
 SQL文の実行タイミング
 SQL文実行のコントロール
 更新件数の取得は難しい
 JPA Query Language
 戻り値となるオブジェクトの数
 Named Query
 検索結果の部分抽出

Chapter 10 EJB3 入門(3)―JPAによるオブジェクト関連の処理

2つのテーブルからの検索処理
 オブジェクト関連の設定
 find()による永続オブジェクトの取得(Lazy Load)
 find()による永続オブジェクトの取得(Eager Load)
 Lazy LoadとEager Loadの切り替え
 JPQLによる永続オブジェクトの取得
全件検索の処理
 Lazy LoadとN+1 Select Problem
 FETCHジョインによるEager Load
 DISTINCT句による重複エンティティの削除

Chapter 11 EJB3 入門(4)―WebアプリケーションからのJPAプログラミング

WebアプリケーションとJPA
 エンティティクラスでのVersion Numberパターンの実装
 JPAによるDaoの実装(ProductDaoBeanクラス)
 そのほかのクラス/設定ファイル
 デプロイと実行
Lazy Loadによる副作用と対処法
 オブジェクトの明示的コピー
 ステートフルセッションBean「Extended Persistence Context」の使用

Chapter 12 Kuina-DaoによるDBプログラミング

Kuina-Dao開発環境のセットアップ
 「Dolteng」「Diigu」のセットアップ
Kuina-Daoによるプログラミング
 Daoインターフェイスの作成
 主キー検索
 一意キー検索
 複数件取得(全件取得)
 業務ロジッククラスの作成
 サービスクラスの作成
 MySQLへの対応
 呼び出し元クラスの作成と実行
Kuina-Daoの各種機能
 2Way SQL機能
 さまざまな条件による検索
 LIKE検索
 不等号による大小比較
 検索結果の部分抽出
 条件が複数ある場合
 FETCH JOINによる検索
 関連先テーブルを条件にしたジョイン
 Named Queryの実行
 更新系処理
 Diiguによるクラスファイルの修正

Chapter 13 JavaによるDBプログラミングのエッセンス

アプリケーションとDBプログラミング
RDBMS技術とDBプログラミング
 データベース接続とコネクションプーリング
 トランザクション
デザインパターンと技術動向の理解
 レイヤアーキテクチャとDaoパターン
 Dependency InjectionとAOP
 トランザクション制御
 セキュリティ
JDBCとO/Rマッピング
 JDBCによるコーディング
 JPAによるコーディング

各種問い合わせは以下のリンクからご連絡ください

感想・レビュー

らう さん

2011-02-13

DBまわりに特化した本で結構貴重価値あり。Spring/SeasaaといったDIコンテナからS2DAO、iBatisといったORマッパーEJBまで網羅。DB処理に関するFactorryメソッド/Facadeパターンの有用性についても例がDBアクセスなので、よくあるりんごとみかんのような何の意味もない例題と違い、とても実用的でわかりやすい。ずっと使える本だと思う。

benjoe さん

2016-11-14

JavaでのDBアクセスに特化した本で、非常に実用的。

関連商品

いきなりプログラミング Python

2,420円(税込)

2024.06.25発売

いきなりプログラミング Python【PDF版】

2,420円(税込)

2024.06.25発売

おすすめ特集

プログラミング入門書大特集

翔泳社のプログラミング書籍の中から、入門・初級者向けの書籍をピックアップ!

Linuxおすすめ本特集

【Linux本特集】入門~達人レベルまで!クラウド時代の必須知識Linuxを学ぶおすすめの本

ライティングおすすめ本

ライティングのスキルアップにおすすめの本。Webライティングやコピーライティングなど

マネー本特集

お金と経済の基礎知識から、資産形成・投資術、お金教育や介護まで。暮らしに役立つマネー本

インテリア本特集

おしゃれな部屋作りのヒントやインテリアの基礎知識、色使い、うつわや洋食器の知識まで、幅広い書籍をご紹介

事務職におすすめの本

Excel、日商簿記、業務の自動化を実現するRPAやPythonの技術など、事務職としてステップアップしたい人に!

特集をもっと見る