稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴

Slides:



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

年度 J2EE II 稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴. 2 この講義の位置づけ 3年前期の「データベース論 (J2EE I) 」に続く講義。 「データベース論」の講義内容を理解 していることが前提。
「図書管理」のための Webアプリケーション開発 -Apache/Tomcat/MySQL/Java on Windows XP-
W e b 2.0 メディアコミュニケーション論Ⅲ 第4回.
情報基礎A 情報科学研究科 徳山 豪.
DB(データベース)のおはなし 作成者:小野正広 DBと言っても、  ドラゴンボール ではないですぞ! 3/1/2017.
2004年度 サマースクール in 稚内 JSFによるWebアプリケーション開発
第1回.
(株)アライブネット RS事業部 企画開発G 小田 誠
第2章 ネットサービスとその仕組み(前編) [近代科学社刊]
安全・安心なネット生活を送るためのネットワークセキュリティ
電子社会設計論 第11回 Electronic social design theory
Servlet J2EE I 第8回 /
JavaServlet&JSP入門 01K0018 中村太一.
「コンピュータと情報システム」 07章 インターネットとセキュリティ
Webアプリケーション.
稚内北星学園大学 情報メディア学部 助教授 安藤 友晴
応用情報処理V 第1回 プログラミングとは何か 2004年9月27日.
30分でわかるTCP/IPの基礎 ~インターネットの標準プロトコル~ 所属: 法政大学 情報科学研究科 馬研究室 氏名: 川島友美
オペレーティングシステムⅡ 第1回 講師 松本 章代 VirtuaWin・・・仮想デスクトップソフト 2009/10/02.
“所有”から“利用”へ 情報社会とコンピュータ 第12回.
セッション管理 J2EE I 第9回 /
HTTPプロトコルとJSP (1) データベース論 第3回.
Curlの仕組み.
心理学情報処理法Ⅰ コンピュータネットワーク概論.
JavaBeans とJSP データベース論 第5回.
応用情報処理V 第1回 プログラミングとは何か 2003年9月29日.
HTTPプロトコル J2EE I 第7回 /
ネットワークプログラミング論 平成28年12月12日 森田 彦.
稚内北星学園大学 情報メディア学部 安藤 友晴
Javaによる Webアプリケーション入門 第9回
Javaによる Webアプリケーション入門 第5回
基礎プログラミング演習 第1回.
第2章 第1節 情報通信の仕組み 1 ネットワークの仕組み 2 通信プロトコル 3 認証と情報の保護
Androidアプリの作成 07A1069 松永大樹.
2004年度 サマースクール in 稚内 JavaによるWebアプリケーション入門
2003年度 データベース論 安藤 友晴.
Linux リテラシ 2006 第4回 ネットワーク CIS RAT.
Webサービスを使った クライアント・プログラム
Webアプリケーションの方向性 データベース論 第13回.
理学部 情報科学科 指導教官 千葉 滋 助教授 学籍番号 03_03686 内河 綾
2006年度 東京サテライト校 エンタープライズ・アプリケーション II
Javaによる Webアプリケーション入門 第6回
セキュリティ 05A2013 大川内 斉.
WEBアプリケーションの開発 2002年度春学期 大岩研究会2.
P2P概説 P2P概説 第2回 /
Ibaraki Univ. Dept of Electrical & Electronic Eng.
Javaによる Webアプリケーション入門 第2回
私の立場 OSカーネルを手がけるエンジニア 大阪市立大学 創造都市研究科の学生
JAVAについて 高橋 雅哉.
Cisco Configuration Professional Express 3.3 アップデート
サーバ・クライアントシステム ( X Window System) 2006/01/20 伊藤 和也 original: 前坂たけし
Servlet J2EE I (データベース論) 第12回 /
Servlet データベース論 第6回.
JSFによるWebアプリケーション開発 第3回
最低限インターネット ネットワークにつなぎましょ!
人を幸せにするアプリケーションの開発 2004年度春学期 大岩研究プロジェクト2 2004年4月8日(木) 発表:武田林太郎.
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
Javaによる Webアプリケーション入門 第8回
Javaによる Webアプリケーション入門 第4回
WebアプリケーションとTomcat ― これまでの復習とこれからの予習 ―
JSPの基本 データベース論 第2回.
稚内北星学園大学 情報メディア学部 安藤 友晴
リレーショナル・データベース J2EE I (データベース論) 第2回 /
稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴
JSPの基本 J2EE I (データベース論) 第8回 /
ホームページを見ているだけで情報が通知される? ~Cookie編~
ネットワークプロトコル.
第2回 Webサーバ.
MVCモデル2による Webアプリケーション
Presentation transcript:

稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴 2004年度 東京サテライト校 J2EE I 稚内北星学園大学 情報メディア学部 専任講師  安藤 友晴

本講義の講義内容 J2EEとは何かを知る。 Javaからリレーショナルデータベースを扱う HTTPプロトコル Servlet/JSPなど、Webアプリケーションの構成要素 Servlet/JSPを組み合わせて、ちょっとしたWebアプリケーションを作る。

本講義のスケジュール (1) 第1日 (12/4) J2EEの概要とデータベース 第2日 (12/18) Servlet/JSPことはじめ リレーショナルデータベースの復習 JDBC 第2日 (12/18) Servlet/JSPことはじめ HTTPプロトコル Servletの基本 JSPの基本 Tomcatの使いかた

本講義のスケジュール (2) 第3日 (1/16) Servlet/JSPの使い分けかた・組み合わせかた JavaBeans タグライブラリ セッション管理 MVCモデル2

単位の認定について 各回の最後にレポート課題を提示します。 レポートを評価して単位を認定 すべてのレポートの提出が必須 レポートはメールで提出 「2004年度 サマースクール in 稚内 JavaによるWebアプリケーション入門」を受講された方は、本講義の単位に読み替えることができます。 もちろん、本講義を受講していただいても構いません。

本講義のWebページ http://www.wakhok.ac.jp/~tomoharu /j2ee1-tokyo-2004/

J2EE概説 J2EE I 第1回 / 2004-12-04

Java言語の得意なこと

Javaの特徴 (1) インターネット時代に登場した新しい言語 ネットワークに強い 正式リリースは1995年 ネットワーク上で使う機能をはじめから用意 ネットワーク上で動かしても安全なプログラムを作れる

Javaの特徴 (2) どんなコンピュータでもそのまま使える どんな国・地域でも使える Windows, Linux (Unix), MacOSX など コンパイルしたプログラムをそのまま動かせる どんな国・地域でも使える アメリカで作られたソフトウェアを日本語化するようなことが手軽に行える 国や地域・使用する言語などに固有の情報を追加するだけでよい

Javaの特徴 (3) 文法が簡単で、使いやすい 「オブジェクト指向」という考え方 (ほかの言語と比べると) 簡単な文法 機能別にプログラムを整理できる プログラムの再利用が容易 既存のプログラムを簡単に自分のプログラムで使える

3つのJava J2SE J2ME J2EE PCなどで利用されるJava。Javaの基本部分。 携帯電話やPDAなどで利用されるJava。

Javaはどこで使われているか? 携帯電話 アプリケーション・サーバ NTTドコモ 「iアプリ」 ボーダフォン 「Javaアプリ」 au 「ezplus」 アプリケーション・サーバ Webからアプリケーションを操作する ショッピングサイトなど

J2EEとアプリケーション・サーバ

Webアプリケーション Webアプリケーションとは、「ユーザがWebブラウザを使って何かを入力し、必要な結果を得る」Webページ。 サーチエンジン 本の検索 商品の購入 掲示板など

なぜWebアプリケーションか アプリケーションを使う側の理由 アプリケーションを提供する側の理由 操作は簡単。 アプリケーションを提供する側の理由 既存のWebサーバをそのまま使える。 集中管理できるので楽。

データベースの利用 Webアプリケーションは「データ」を処理する。 「データ」は「データベース」に保存する 図書データ 在庫リスト 掲示板の記事 「データ」は「データベース」に保存する データベースに保存しておくと、何かと便利

J2EEの基本モデル J2EEは「データベース」を使った「Webアプリケーション」の作成を念頭に置いている技術

なぜJ2EEか (1) ショッピングサイトのようなシステムでは、次の条件を満たす必要がある。 たくさんアクセスがあっても大丈夫なこと。 セキュリティを保てること。例えば顧客の情報を盗まれないようにすること。 従来の技術 (例えば CGI) では、こうした条件を満たすのはなかなか大変

なぜJ2EEか (2) 大規模な商用システムにも耐えうるシステムが必要。 こうしてうまれたのが「アプリケーション・サーバ」 先に示したJavaの特徴が、アプリケーション・サーバを作るうえで有利に働く

なぜ Javaを使うのか? (1) Webアプリでは、CGIよりもJavaは速い ライブラリ・ツールの充実 HTMLとプログラムの分離が容易 GUIも使ってないし、いちいち起動する必要もない。 プロセスではなく、スレッドで処理 ライブラリ・ツールの充実 もともと揃っているうえに、最近は特に充実。 HTMLとプログラムの分離が容易 他ではなかなか難しい。

なぜ Javaを使うのか? (2) Java言語そのものの信頼性 Cなどと違い、ポインタ演算がないので、暴走する危険性が極めて少ない。 ガベージコレクションによる不要オブジェクトの回収 セキュリティが考慮されている言語仕様

で、J2EEは実際どうよ? (1) 大規模なビジネスアプリの世界では、Javaベースの「アプリケーション・サーバ」が流行。 Oracle, BEA, IBM, Sun, Apple など大手のベンダーが採用。 こんなところで使われています Webを使った顧客サービスの提供 COBOLベースの事務情報システムの置き換え 銀行でも使われ始めている

で、J2EEは実際どうよ? (2) 現在、Javaがいちばんよく使われている分野 ところが、J2EEがわかる技術者は非常に少ない

欠点はないの? 個人ベースでは使いにくいかも 教育コストがかなりかかる もともと大規模システム向き。 ユーザCGIのような仕組みはない。 勉強すべきことはけっこう多い

J2EEで使われている技術

3層モデル J2EEの基本パターン 「Webブラウザ」から「データベース」を使う

J2EEサーバ 3層モデルの中央に位置 大きく分けて、次の2つの機能を持つ 2つのコンテナでは、それぞれJavaのプログラムが動く Webコンテナ EJBコンテナ 2つのコンテナでは、それぞれJavaのプログラムが動く

Servlet と JSP Servlet JSP どちらも「Webコンテナ」で動く。 HttpServlet を継承する Javaプログラム。 HTML を埋め込める (あまり使わないけど) JSP ほとんどHTML Javaプログラムを埋め込める (あまり使わないけど) どちらも「Webコンテナ」で動く。 普通は Servlet と JSP を組み合わせて使う。

MVCモデル2とフレームワーク ServletやJSPは、「MVCモデル2」という技術で組み合わせる。 MVCモデル2に基づく「フレームワーク」を使うと、Webアプリケーションの作成が楽になる Struts JSF Tapestry など

データベースの利用 Webアプリケーションは「データ」を処理する。 「データ」は保存される (= 永続性を持つ) 図書データ 在庫リスト 掲示板の記事 「データ」は保存される (= 永続性を持つ) データベースを使うと面倒がなくて良い。 データをただのファイルで保存しておくと、遅いし面倒。

Javaからデータベースを利用 基本は「JDBC」 EJB (Enterprise JavaBeans) を使うと、データベースの取り扱いがもっと楽になる。 EJBコンテナが必要

B2B と B2C

B2C と B2B B2C B2B Business to(2) Customer 企業と顧客のやりとり Business to(2) Business 企業と企業のやりとり

WebアプリケーションとB2C B2CでWebアプリケーションを使うのはもはや当たり前 やりとりの内容が完全に電子化されるので、業務が効率化できる。

その次の目標 B2B間の情報のやりとりを、できるだけ自動化したい。 同じ組織内(企業とか大学)だけではなく、別の組織にある情報システムを組み合わせて使いたい。

HTTPプロトコルとWebサービス

プロトコル ネットワークでの通信の仕方を定めたもの Web の場合  HTTP プロトコル メール送信  SMTP メール受信  IMAP or POP ファイル転送  FTP リモートログイン  TELNET

ホスト名とポート番号 インターネットでの通信に必要なもの ホスト名 (= IPアドレス) ポート番号 www.wakhok.ac.jp など どのプログラムを使用するか識別する番号 HTTP を扱うプログラムは、たいてい 80 番

HTTPの利用 (1) B2B や B2Cのプログラムは、それぞれ離れたところにあることが想定されている。 しかし、離れたコンピュータにアクセスしようと思っても、たいていのサイトではWebとメール以外のポートは閉じている。 多くのサイトでは、セキュリティを保つため、ほとんどのポートを使えなくしている。

HTTPの利用 (2) しかし、HTTP (80番) は使えるだろう。 そこで、HTTP を使って通信する。 まれに、SMTP を使う場合もある。

「Webアプリケーション」の場合 「Webサーバ」が「Webブラウザ」と通信を行う。

「Webサービス」の場合 「Webサーバ」が「プログラム」と通信を行う。

Webサービスとは何か Webのブラウザを使わずに、プログラム中から Web にアクセスして必要な情報を取り出せるサービス。

Webサービスの例 (1) Google Web APIs エージェント 自分のプログラムから、Googleのサービスを呼び出す

Webサービスの例 (2) 企業内に2つの情報システムの統合 それぞれの情報システムに、Webサービスの機能を追加する。

HTTP と Webサービス HTTP によって B2B・B2C が繋がれる。 Webサービスは少しずつ普及していっている。 期待が大きいジャンル 技術者は少ない Webサービスを利用するには、Javaがいちばん便利 (かもしれない)

J2EEの再定義 J2EEは、B2B・B2Cで使われる技術を整理したもの Webアプリケーション データベースの取り扱い

wakhokで学ぶJava

きょうの内容をどこで学ぶか (1) J2EE I (3年次) J2EE II (4年次) J2EE III (4年次) Servlet / JSP / HTTPプロトコル / MVCモデル2 / JDBC J2EE II (4年次) JSF によるWebアプリケーション J2EE III (4年次) EJB

きょうの内容をどこで学ぶか (2) Webサービス I・II (4年次) Grid for Java (4年次) Grid Computing UMLとシステム設計 (4年次) システムの設計技法