Seasar2徹底入門 - SAStruts/S2JDBC対応 -(竹添 直樹)|翔泳社の本
  1. ホーム >
  2. 書籍 >
  3. Seasar2徹底入門 - SAStruts/S2JDBC対応 -

Seasar2徹底入門 - SAStruts/S2JDBC対応 -


形式:
書籍
発売日:
ISBN:
9784798121505
定価:
4,180(本体3,800円+税10%)
仕様:
B5変・512ページ
カテゴリ:
プログラミング・開発
キーワード:
#プログラミング,#開発環境,#開発手法,#Web・アプリ開発
シリーズ:
徹底入門
紙の書籍

現場のノウハウを詰め込んだ Seasar2によるWeb開発バイブル決定版

本書は、Javaベースの国産DIコンテナ「Seasar2」と、Seasar2をベースにしたWebフレームワーク「SAStruts」、データベースアクセスフレームワーク「S2JDBC」の解説書です。DIコンテナとしてのSeasar2の基礎から、SAStrutsやS2JDBCといったフレームワークを徹底的に使いこなすために必要となる情報までを1冊にまとめました。
実際の開発ではフレームワークの標準機能だけでは足らず、独自に拡張を行わなければならないケースも多いはずです。そのため、本書ではフレームワークの利用方法だけでなく、拡張方法についても可能な限り触れています。そのため、本書ではフレームワークを使用してきた中で得た現場でのノウハウや、設計時の指針なども随所にちりばめています。
さらに、Seasar2ファミリーのプロダクトの中から、SAStrutsやS2JDBCと組み合わせてWebアプリケーションの開発に利用できる開発ツール、ライブラリ、フレームワークなども取り上げており、まさにSeasar2よるWebアプリケーション開発のすべてを網羅した内容となっています。

Seasar2 徹底入門へようこそ! ~推薦のことば
はじめに
本書を読む前に
 

1 Seasar2 の世界へようこそ!

1.1  Seasar2 の歩み
1.2  Dependency Injection
1.3  開発環境のセットアップ


2 S2Container
2.1  はじめての S2Container
2.2  コンポーネントの定義
2.3  インジェクションの種類
2.4  OGNL
2.5  インクルードと名前空間
2.6  AOP
2.7  自動登録
2.8  アノテーション
2.9  Web アプリケーションでの利用
2.10 環境ごとの切り替え
2.11 SMART deploy
2.12 dicon ファイルの構成
2.13 dicon ファイルリファレンス


3 SAStruts 入門
3.1  SAStruts とは?
3.2  SAStruts で Hello World!
3.3  SAStruts の設定


4 アクションとアクションフォーム
4.1  アクション
4.2  アクションフォーム
4.3  入力チェック


5 ビュー
5.1  JSP の基礎知識
5.2  Struts のカスタムタグ
5.3  JSTL のカスタムタグ
5.4  SAStruts のタグライブラリ
5.5  SAStruts が提供する EL 関数
5.6  JSP ファイルの共通化
5.7  JSP へのダイレクトアクセスの禁止
5.8  Tiles によるレイアウト
5.9  独自のタグライブラリを作る
5.10 ビューとして Mayaa を使う


6 SAStruts 応用編
6.1  トランザクショントークン
6.2  ファイルのアップロードとダウンロード
6.3  Ajax
6.4  アプリケーションの共通処理を実装する
6.5  認証機能を実装する
6.6  エラー処理
6.7  ポートレット対応


7 S2JDBC 入門
7.1  S2JDBC とは?
7.2  はじめての S2JDBC
7.3  S2JDBC の設定

 

8 エンティティ
8.1  エンティティ定義のためのアノテーション
8.2  エンティティの定義
8.3  主キーの設定
8.4  関連の定義
8.5  列挙型の利用
8.6  エンティティの継承
8.7  エンティティのマッピングルールの変更


9 JdbcManager
9.1  検索
9.2  挿入
9.3  更新
9.4  削除
9.5  SQL の実行
9.6  外部 SQL ファイル
9.7  イテレーション検索
9.8  検索結果のページング
9.9  楽観的排他制御
9.10 ストアドの呼び出し


10 S2JDBC-Gen 
10.1 S2JDBC-Gen とは?
10.2 ソースコード生成のカスタマイズ
10.3 タイプセーフな S2JDBC
10.4 テストケースの生成
10.5 S2JDBC-Gen の Ant タスクリファレンス


11 SAStruts と S2JDBC の連携
11.1 SAStruts と S2JDBC の連携
11.2 トランザクションの制御
11.3 Dolteng による自動生成


12 Seasar2 が提供するユーティリティ 
12.1 JavaBean の値をコピーする (S2BeanUtils)
12.2 HttpServletRequest などを取得する
12.3 基本的な処理のためのユーティリティ
12.4 入出力関係のユーティリティ
12.5 クラスパス内のリソースに関するユーティリティ
12.6 リフレクション関係のユーティリティ
12.7 その他の便利なクラス


13 ユニットテスト
13.1 ユニットテストとは?
13.2 S2Unit
13.3 S2JUnit4
13.4 EasyMock のサポート
13.5 SAStruts + S2JDBC におけるユニットテスト


14 その他のプロジェクト
14.1 S2Mai によるメール送信
14.2 S2Chronos によるパッチ処理
14.3 S2Config による設定情報の外部化
14.4 S2CSV による CSV ファイルの入出力
14.5 Fisshplate による Excel ファイルの生成
14.6 mobylet による携帯 Web アプリ開発
 
索引

付属データはこちら

お問い合わせ

内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。

正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。

利用許諾に関するお問い合わせ

本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。

追加情報はありません。

ご購入いただいた書籍の種類を選択してください。

書籍の刷数を選択してください。

刷数は奥付(書籍の最終ページ)に記載されています。

現在表示されている正誤表の対象書籍

書籍の種類:

書籍の刷数:

本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

対象の書籍は正誤表がありません。

最終更新日:2014年06月26日
発生刷 ページ数 書籍改訂刷 電子書籍訂正 内容 登録日
1刷 028
図2.7
4刷
以下の図に差し替えます。
正しいクラス図

訂正箇所は以下になります。
●左上囲み(IMessagProvider内の1つ目のメソッド)
setMessageTarget(messageTarget: IMessageTarget): void

●右下囲み
DefaultMessageTarget
2011.02.21
1刷 041
リスト 4~5行目
3刷
<arg>"C:/test1.csv"</arg> <arg>"C:/test2.csv"</arg>
 <arg>"C:/test1.csv"</arg> </initMethod> <initMethod name="addFileName">  <arg>"C:/test2.csv"</arg>
2011.02.03
1刷 041
本文6~7行目
3刷
それ以外の場合ははじめてコンポーネントが取得されたタイミングで呼び出されます。 また、destroyMethodで指定したメソッドはS2Container#destroy()が
それ以外の場合ははじめてコンポーネントが取得されたタイミングで呼び出されます。 対して、destroyMethodタグで指定したメソッドはS2Container#destroy()が
2011.02.03
1刷 066
コード
4刷
    key.append(args[i]);
}
key.append(")");

return key.toString();
}

}
}
key.append(args[i]);
}
key.append(")");

return key.toString();
}

}
    key.append(args[i]);
}
key.append(")");

return key.toString();
}

}

7~13行目(赤字部分)を削除します。
2011.02.21
1刷 073
6行目
8刷
j2ee.dcon
j2ee.dicon
2013.10.24
1刷 084
表2.19、instance属性の説明
2刷
InstanceType.ALLICATION
InstanceType.APPLICATION
2010.04.22
1刷 087
2.8.6の2行目
3刷
@InitMethodが付与されたメソッド
@DestroyMethodが付与されたメソッド
2010.09.29
1刷 099
下から2行目
7刷
 たとえば、ルートパッケージがorg.seasar.exapmpleの場合、
 たとえば、ルートパッケージがorg.seasar.exampleの場合、

「exapmple」ではなく、「example」です。
2012.12.03
1刷 100
2.11.5の上から1行目
2刷
customzier.diconで定義されている
customizer.diconで定義されている
2010.05.06
1刷 124
2つめのリスト
3刷
public String echo(){  this.name = echoForm.name;  return "echo.jsp";
public String echo(){  return "echo.jsp";
2011.02.03
1刷 139
上から3行目
2刷
以下の例ではHelloActionの
以下の例ではEmployeeActionの
2010.06.07
1刷 146
上から4行目
4刷
プロパティとした扱うことが
プロパティとし扱うことが
2011.02.09
1刷 150
リスト「TableFormへ値を送信するJSP」の4行目
2刷
<c:forEah ...>
<c:forEach ...>
2010.05.06
1刷 156
コードリスト「入力チェックの有無の指定」のindex()メソッド
2刷
public string index() throws Exception {
public string index() {

throws Exceptionは不要です。
2010.06.07
1刷 194
下から3行目
2刷
java.utl.Map
java.util.Map
2010.06.07
1刷 262
本文、上から4行目
4刷
@Authアノテーションを付与したアクションに対し
@Authアノテーションを付与した実行メソッドに対し
2011.05.10
1刷 262
2つ目のリスト(@Authアノテーション)のコード2行目
4刷
@Target(ElementType.TYPE)
@Target(ElementType.METHOD)
2011.05.10
1刷 262
下から3~4行目
4刷
フィルタでは実際にどのアクションクラスが呼び出されるのか
フィルタでは実際にどのアクションクラスのどのメソッドが呼び出されるのか
2011.05.10
1刷 263
リスト、上から6~8行目
2刷
//Object action = ((S2ActionMapping) mapping).getAction(); S2ExecuteConfig executeConfig = S2ExecuteConfigUtil.getExecuteConfig();
S2ExecuteConfig executeConfig = S2ExecuteConfigUtil.getExecuteConfig();

6行目「// Object action ...」の部分はサンプルコードとしては不要
2010.07.06
1刷 265
2つ目のリスト、8行目
2刷
.equals("org.seasar.sastruts.example.Auth")){
.equals("org.seasar.sastruts.example.annotation.Auth")){
2010.07.06
1刷 267
リスト、上から6~8行目
2刷
//Object action = ((S2ActionMapping) mapping).getAction(); S2ExecuteConfig executeConfig = S2ExecuteConfigUtil.getExecuteConfig();
S2ExecuteConfig executeConfig = S2ExecuteConfigUtil.getExecuteConfig();

6行目「// Object action ...」の部分はサンプルコードとしては不要
2010.07.06
1刷 271
リスト、上から3行目
2刷
= Logger.getLogger(ExceptionHandlerFilter.class);
= Logger.getLogger(ExceptionFilter.class);
2010.07.06
1刷 271
リストの「// エラー画面にフォワード」部分
2刷
// エラー画面にフォワード RequestDispatcher dispacher
  = ・・・ dispacher.forward( ・・・
// エラー画面にフォワード RequestDispatcher dispatcher
  = ・・・ dispatcher.forward( ・・・

※"dispacher"ではなく、"dispatcher"(tが2箇所抜けている)。
2010.08.10
1刷 302
2つ目のリスト「アプリケーションサーバ~(s2container.dicon)」の4行目
2刷
"jta.dicon
"jta.dicon"

閉じダブルクォート(")が抜けている。
2010.07.12
1刷 331
表9.4、queryTimeout(int queryTimeout)の説明
2刷
クエリのタイムアウト病数
クエリのタイムアウト
2010.04.26
1刷 338
9.3.1 コード「更新するフィードの制御」
8刷
// nameのみ更新する jdbcManager.updatete(employee).includes("name").execute();
// nameのみ更新する jdbcManager.update(employee).includes("name").execute();
2014.06.26
1刷 342
2つ目のリスト「件数を取得する」
2刷
long count = = jdbcManager.~
long count = jdbcManager.~

=が1つ多い
2010.07.12
1刷 372
表10.1、タスクの5項目目
2刷
gen-enntitytest
gen-entitytest

nが1つ多い
2010.07.27
1刷 402
表10.8、属性欄の6項目目
2刷
igGeneration
idGeneration
2010.08.09
1刷 406
表10.9、属性欄の一番最後
2刷
classpathref
classpathref【場合により必須】

※「場合により必須」マーク抜け
2010.08.09
1刷 420
表10.18、属性欄の下から5項目目
2刷
confgPath
configPath
2010.08.09
1刷 446
ページ最下部コード囲み
8刷
Beans.createAndCopy(src, DestBean.class)
Beans.createAndCopy(DestBean.class, src)

引数が逆です。
2013.10.24
1刷 446
最下行のリスト、createAndCopy()メソッドの第2引数
2刷
DestBean.cass
DestBean.class
2010.08.09
1刷 448
最下行のリスト、2行目
2刷
.dateCconverter
.dateConverter

※cが1つ多い
2010.08.09
1刷 454
1つ目のリスト、2行目
2刷
array = ArrayUtil.add(array, obj):
array = ArrayUtil.add(array, obj);

※add()メソッドの末尾はコロン(:)ではなく、セミコロン(;)。
2010.08.09
1刷 541
1行目
4刷
 こうしておくと、~
 また、設定値の上書きを行なう場合はgetConfigString()メソッドの代わりにfindAllConfigValue()メソッドを使用して値を取得するように変更する必要があります。
 こうしておくと、~
2011.07.08
1刷 555
リスト「CSVエンティティをCSVに書き出す」の1行目
6刷
tringWriter writer = new StringWriter();
StringWriter writer = new StringWriter();
2012.09.12
1刷 571
ページ上部リスト囲みの3行目
2刷
mobylet-mail
mobylet-taglibs
2010.04.20
1刷 587
脚注【29】
2刷
本書で対象としているmobylet 1.0.2の時点では
本書で対象としているmobylet 1.0.3の時点では
2010.04.20
1刷 594
索引「K」の4行目
2刷
load-dataタスク…………419
L -------------------------- load-dataタスク…………419

「L」の見出しが抜けていました。
2013.03.27
1刷 594
索引「K」の11行目
2刷
m:afterRenderタグ…………231
M -------------------------- m:afterRenderタグ…………231

「M」の見出しが抜けていました。
2013.03.27

感想・レビュー

えみぃ さん

2013-12-28

全部は読んでいない。仕事のために必要な分だけつまみ食い。でもかなり役に立った。Seasar2が日本製のためか、英語情報がほぼないので、この本がネット検索等より詳しかったように感じた。

まるくと さん

SAStrutsの本ってこれくらいしかない気がする。字引的に。大体はWebで済むんだけれども。

らぴす さん

2013-01-30

仕事で使用。字引的に。