Webアプリケーションの方向性 データベース論 第13回.

Slides:



Advertisements
Similar presentations
セッション管理 ソフトウェア特論 第 8 回. ここでの内容 セッション管理の基本を知る。 HttpSession の使い方を知る。
Advertisements

年度 J2EE II 稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴. 2 この講義の位置づけ 3年前期の「データベース論 (J2EE I) 」に続く講義。 「データベース論」の講義内容を理解 していることが前提。
1 JSP の作成 JSF による Web アプリケーション 開発 第 4 回. 2 ここでの内容 JSF での JSP の作り方と動かし方につい て学ぶ。
1 安全性の高いセッション管理方 式 の Servlet への導入 東京工業大学 理学部 千葉研究室所属 99-2270-6 松沼 正浩.
2004年度 サマースクール in 稚内 JSFによるWebアプリケーション開発
知的システム構築工房   Linux設定セミナーシリーズ 第5回 Webアプリ作成 2011年3月16日(水) 株式会社 アセンディア 1.
JPAを利用した RESTful Webサービスの開発
名古屋大学大学院人間情報学研究科 物質生命情報学専攻 情報処理論講座 原 崇
背景 我々の研究室で開発しているJavaプログラム解析フレ ームワークでは,解析情報はメモリ上に保持される 問題点
エンタープライズアプリケーション II 第10回 / 2006年7月23日
Mavenによる プロジェクト管理 近畿大学理工学部 情報学科3年  小野実.
JSFによるWebアプリケーション開発 第11回
Servlet J2EE I 第8回 /
ネットワークプログラミング論 平成27年10月12日 森田 彦.
JavaServlet&JSP入門 01K0018 中村太一.
Webアプリケーション.
稚内北星学園大学 情報メディア学部 助教授 安藤 友晴
タグライブラリ ソフトウェア特論 第6回.
卒研:データベースチーム 第4回 DOMを使った処理
タグライブラリとJSP J2EE I 第10回 /
稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴
セッション管理 J2EE I 第9回 /
HTTPプロトコルとJSP (1) データベース論 第3回.
Curlの仕組み.
タグライブラリとJSP J2EE II 第2回 2004年10月7日 (木).
JavaBeans とJSP データベース論 第5回.
JSFによるWebアプリケーション開発 第6回
エンタープライズアプリケーション II 第7回 / 2006年7月9日
第8章 データベースシステムの発展 8.1 オブジェクトリレーショナルデータベース 8.2 分散データベース 8.3 インターネットとデータベース.
Day3 Day4 Day3 Day4.
JSPの作成 J2EE II 第3回 2005年4月10日.
Servlet入門(2) 入力フォームをつかったWebアプリ
ネットワークプログラミング論 平成28年10月17日 森田 彦.
ServletによるWebアプリ作成 入門
ネットワークプログラミング論 平成28年12月12日 森田 彦.
Javaによる Webアプリケーション入門 第9回
Javaによる Webアプリケーション入門 第5回
第8章 Web技術とセキュリティ   岡本 好未.
2004年度 サマースクール in 稚内 JavaによるWebアプリケーション入門
2003年度 データベース論 安藤 友晴.
TomcatによるWebアプリケーション開発入門
JDBC J2EE I 第4回 /
理学部 情報科学科 指導教官 千葉 滋 助教授 学籍番号 03_03686 内河 綾
2006年度 東京サテライト校 エンタープライズ・アプリケーション II
Javaによる Webアプリケーション入門 第6回
JDBC データベース論 第12回.
ネットワークプログラミング論 平成28年10月31日 森田 彦.
Javaによる Webアプリケーション入門 第7回
WEBアプリケーションの開発 2002年度春学期 大岩研究会2.
Jakarta Struts (2) ソフトウェア特論 第11回.
Javaによる Webアプリケーション入門 第2回
Javaによる Webアプリケーション入門 第11回
JDBC J2EE I (データベース論) 第5回 /
Servlet ソフトウェア特論 第7回.
Servlet J2EE I (データベース論) 第12回 /
Servlet データベース論 第6回.
JSFによるWebアプリケーション開発 第3回
JDBC ソフトウェア特論 第3回.
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
Javaによる Webアプリケーション入門 第8回
Javaによる Webアプリケーション入門 第4回
WebアプリケーションとTomcat ― これまでの復習とこれからの予習 ―
JSPの基本 データベース論 第2回.
Action Method の実装 J2EE II 第9回 2004年12月2日.
Jakarta Struts (1) ソフトウェア特論 第10回.
稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴
JSPの基本 J2EE I (データベース論) 第8回 /
JSFによるWebアプリケーション開発 第5回
JSFによるWebアプリケーション開発 第7回
MVCモデル2による Webアプリケーション
Presentation transcript:

Webアプリケーションの方向性 データベース論 第13回

きょうの内容 JDBC を使った Servlet について学ぶ。 タグライブラリについて学ぶ。 「MVCモデル2」について学ぶ。

JDBC を使った Servlet のコンパイル 次のパッケージはJ2SEには入っていない。 javax.servlet パッケージ javax.servlet.http パッケージ Tomcat にはこのパッケージが含まれているので、classpath に含めてコンパイル Java –classpath “%CATALINA_HOME%\common\lib\servlet.jar; %HSQLDB_HOME%\lib\hsqldb.jar” JDBCTestServlet.java

TomcatにWebアプリケーションを置く %CATALINA_HOME/webapps/ に配置 ひとつのファイル (war ファイル) にまとめても良い。 test/ | |-- WEB-INF/ --- web.xml  必須 | |- classes/  Servlet ・Beanなどの クラス | |- lib/  使用するライブラリ |-- loop.jsp  JSP

Tomcat への配置 Servlet はコンパイルして、WEB-INF/classes に置く。 JDBCドライバを WEB-INF/lib に置く。 WEB-INF/ --- web.xml |- classes/ --- LoopServlet.class |- lib/ --- hsqldb.jar  JDBCドライバ

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

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

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

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

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

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

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

JavaBeans この例では2つのBeanを用意している。 Bean には setter, getter を用意する。 複数の図書データを格納する BookList 1冊の図書データを格納する BookData Bean には setter, getter を用意する。

Servlet の処理 // データベースから検索して、結果をBeanに格納 BookList 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);

JSP の処理 // HttpSession で登録した JavaBeans <jsp:useBean id="bookList" class="jp.ac.wakhok.library.BookList" scope="session" /> // タグライブラリの利用を宣言 <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>

タグライブラリ JSPの中で定義できる独自のタグ。 スクリプトレットを減らすことができる。

タグライブラリの例 <ul> <c:forEach var="book" items="${bookList.iterator}" > <li> <c:out value="${book.title}" /> / <c:out value="${book.author}" /> </li> </c:forEach> </ul>

Struts このプログラムに1冊の本の詳細を表示させるとしたら、どう改造したらよいのか? Struts Servlet を増やす? WebアプリケーションのController と View を担当するフレームワーク Controller がはじめから1つだけ用意されており、データの流れをXMLで記述する。