11月30日(月)1、2コマ目
今日、やったこと
- C#版「オークションサイト」構築
- Javaの例外
今日の課題(C#版「オークションサイト」)
ソースを載せておきます。
[データアクセスレイア]UserDAOクラス
ユーザーマスタテーブルアクセス用クラス。
あくまでもデータベースアクセスクラス。認証メソッドはここには作らない。
このクラスが返す値を使って、ビジネスロジック層で認証を行う。
逆の言い方をすれば、ビジネスロジック層で認証を行うためにこのクラスの機能を使う。
[データアクセスレイア]ItemDAOクラス
商品マスタテーブルアクセス用クラス。
[データアクセスレイア]BidDAOクラス
入札データテーブルアクセス用クラス。
[ビジネスロジックレイア]Serviceクラス
このクラスでシステムに必要な機能を提供する。
[プレゼンテーションレイア]Index.cshtml.cs
1ページ目。Index.cshtmlはなんてことはないので省略。
[プレゼンテーションレイア]ItemList.cshtml.cs
2ページ目。おなじく、ItemList.cshtmlは省略。
[プレゼンテーションレイア]Bid.cshtml.cs
3ページ目。Bid.cshtmlは省略。
今日のホワイトボード
Javaの例外クラス
.Netと異なり、例外処理(キャッチするまたはthrowsで例外スローを宣言してスロー)をコンパイル時にチェックする検査例外と.Netと同じ実行時例外の2種類の例外がJavaにはあります。
|
|
図 Javaの例外クラス |
せっかく2種類の例外クラスがあるので、異常時の通知方法で使い分けをします。
|
|
図 検査例外と実行時例外の使い分け |
サンプルアプリケーション「ユーザー登録」
以前、.Netでの作成したユーザー登録です。入力されたIDがすでに登録済みならエラー「異なるIDを入力してください」を通知します。
|
|
図 サンプルアプリケーション「ユーザー登録」 |
検査例外をスローするメソッドを使うときは
DBアクセスを行うメソッドはSQLExceptionをスローするものが多いです。このSQLExceptionは検査例外なので、
- キャッチする
- throwsで例外スローを宣言して呼び出し元にスロー
のいずれかを行う必要があります。
|
|
図 検査例外をスローするメソッドを使うときは |




コメント