Presentation is loading. Please wait.

Presentation is loading. Please wait.

MVCモデル2による Webアプリケーション

Similar presentations


Presentation on theme: "MVCモデル2による Webアプリケーション"— Presentation transcript:

1 MVCモデル2による Webアプリケーション
Javaによる Webアプリケーション入門 第10回

2 ここでの内容 Servlet と JSP の使い分けについて学ぶ。 「MVCモデル2」について学ぶ。

3 Servlet と JSP の使い分け Servlet JSP
Servlet から HTML を出力させると、プログラムの見通しが悪くなる。  Servlet ではプログラムに専念するのがよい。 JSP JSP でスクリプトレットを使うと、読みにくい。 スクリプトレットに間違いがあると、デバッグがしにくい。  JSP では、できる限りタグを使うのがよい。

4 MVCモデル2 (1) 概要 Webアプリケーションを構成する要素を3つに分ける。 Model View Controller

5 MVCモデル2 (2) Model アプリケーションのデータと必要な処理(=ビジネスロジック)をまとめたもの
JavaBeans(あるいはそのコレクション)を使う

6 MVCモデル2 (3) View Model を表示させる部分 JSPを使う

7 MVCモデル2 (4) Controller Model と View を制御する Servletを使う

8 MVCモデル2 (5) 処理の流れ Servlet がHTTPから要求を受け取り、必要な処理をする。
データベースへのアクセスなど 処理した結果を JavaBeans に格納する。 Servlet は JavaBeans (または、Beans をまとめたコレクション) を JSP に渡す。 JSP はタグライブラリを駆使して処理結果を出力する。 Bean のプロパティを出力する

9 サンプルプログラム 図書の検索を行うプログラム まずユーザがWebブラウザに検索したい本の情報を入力する。
その情報をもとに Servlet が検索処理をする。 JSPが検索結果を表示する。

10 Model の準備 Model は JavaBeans、あるいはそのコレクション Bean には setter, getter を用意する。
1冊の図書データはBookData に格納 複数の図書データは java.util.List に格納 Bean には setter, getter を用意する。

11 Servlet の処理 // データベースから検索して、結果をBeanに格納
List list = search(ndc, tyosya_hyouji, id, title, author, publisher); // HttpSession を取り出し、Beanを登録 HttpSession session = request.getSession(); session.setAttribute("bookList", list); // 後の処理をJSPに任せる context.getRequestDispatcher(jspFile) .forward(request, response);

12 JSP の処理 // タグライブラリの利用を宣言 <%@ taglib prefix="c"
uri=" %> // HttpSession から Model であるコレクションを // 取り出す <c:forEach var="book" items="${sessionScope.bookList}" >

13 タグライブラリを使った ループ処理 <ul> <c:forEach var="book“
items="${sessionScope.bookList}" > <li> <c:out value="${book.title}" /> / <c:out value="${book.author}" /> </li> </c:forEach> </ul>


Download ppt "MVCモデル2による Webアプリケーション"

Similar presentations


Ads by Google