Download presentation
Presentation is loading. Please wait.
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>
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.