投稿

10月, 2020の投稿を表示しています

10月20日(火)1、2コマ目

イメージ
今日、やったこと UMLマスタ1のつづき 新課題(UMLマスタ2)配布、説明 今日のホワイトボード UMLマスタ1のつづき 前回は「全件検索」を実装しました。今回は残りの「商品名で検索」をクラス図、シーケンス図に従って実装します。 〇ItemDAOクラスのcreatePrepareStatement()メソッド シーケンス図「商品名で検索」を見ると、ItemDAOのfindByName()メソッドの活性区間から自分に戻ってくる矢印があります。この矢印にはcreatePrepareStatement()メソッドの呼び出しになっています。この 自分に戻ってくる矢印は自クラスのメソッド呼び出し です。 ということで、createPrepareStatement()メソッドはfindByName()メソッドから呼び出されることがわかります。 図 「商品名で検索」シーケンス図 createPrepareStatement()メソッドは 商品名であいまい検索するPreparedStatementのインスタンスの生成 が仕事です。 ItemDAOクラス 〇サーブレットからServiceクラスのメソッド呼び出し 「全件検索」も「商品名で検索」も同じサーブレットをPOSTコマンドでリクエストします。 ということは、doPost()メソッド内で全件検索(ServiceクラスのgetItem()呼び出し)か商品名で検索(ServiceクラスのgetItem(商品名)呼び出し)か分岐する必要があります。 分岐の条件は検索条件の有無です。検索条件が入力されて(getParameter()でなにか取得できた)いれば商品名で検索、なにもなければ全件検索になります。 SearchSrvクラス(サーブレット) Serviceクラス 小技 JDBCドライバについて 今日、TomatのlibフォルダにオラクルのJDBCドライバ(ojdbc10.jar)をコピーしました。 今後は Webプロジェクト内にJDBCドライバを持つ必要はありません 。 図 JDBCドライバの配備 UMLマスタ2について 〇価格で検索について 配布した紙が全く分からない状態だったので、補足させてください。...

10月15日(木)1、2コマ目

イメージ
今日、やったこと UML 今日のホワイトボード UML Unified Modeling Language(統一モデリング言語)の略。 言語と言っているが、要は設計図の描き方。とりあえず、クラス図とシーケンス図はおさえてほしい。 図 UML クラス図 クラスの静的な関係を表したもの。 要はどんなクラスがあって、フィールド、メソッドはどうなっているを表したもの。 通常、1システムに対して、1つ作成。 図 クラス図 シーケンス図 クラスの動的な関係を表したもの。 要は機能を実現するためにどんなメソッドを呼び出すかを表したもの。 通常、1機能に対して1つ作成。 図 シーケンス図 今日の課題 とりあえずUMLに慣れる。 〇Itemクラス 〇ItemDAOクラス 〇Serviceクラス 〇SearchSrvクラス 〇index.html 〇result.jsp JavaのWebシステムであることをクライアントに見せないため(セキュリティ的観点から)、クライアントから直接JSPにアクセスさせたくない。 よって、WEB-INF以下にJSPを置いて直接アクセスできないようにする。 JSPをクライアントに表示する際は、フォワード(サーバー内部でJSPを読み込み、クライアントに返す)で処理する。 なお、リダイレクトはクライアントにリダイレクト先をリクエストさせる仕組み。 図 WebContentとWebContent/WEB-INF 〇index.html