JavaServlet&JSP入門 01K0018 中村太一.

Slides:



Advertisements
Similar presentations
第6章 インターネットアプリケー ション 6.1 インターネットアプリケーション 6.2Java によるネットワーク処理 6.3 電子メール 6.4Web アプリケーション 6.5 チャットアプリケーション.
Advertisements

ネットワークプログ ラミング論 平成27年 11 月 1 6日 森田 彦. 【基礎課題 6-1 】の解答 ① サーブレットを記述して保管するとコン パイルが自動的に行われる。 ② サーブレットの記述後、開発者がコンパ イル命令を実行しなければならない。 ③ プロジェクト名が Web アプリケーション.
Web アプリケーション開発入門 大岩研究会 今野隆平 2002 年 5 月 9 日 Introduction to Web Application Development.
1 安全性の高いセッション管理方 式 の Servlet への導入 東京工業大学 理学部 千葉研究室所属 99-2270-6 松沼 正浩.
Servlet 矢口 洋介 清水 麗雄. 準備  Java フォルダに入ってから mkdir Servlet ln – s ~/public_html/Servlet.  フォルダの移動 cd public_html/Servlet/WEB-INF/classes/*.  ファイルのコピー cp.
北海道情報大学 情報メディア学部 情報メディア学科 新井山ゼミ 中村 有佑
BBT大学 Ruby on Rails開発環境セットアップマニュアル
社会人学習講座 「Javaプログラミング概論」
JPAを利用した RESTful Webサービスの開発
Applet 岡部 祐典 鈴木 敬幸.
エンタープライズアプリケーション II 第10回 / 2006年7月23日
Servlet J2EE I 第8回 /
JAVA GUIプログラミング 第1回 JAVAの実行 絵を描こう.
アプレット (Applet)について.
Servlet入門(2) 入力フォームをつかったWebアプリ
Iアプリプログラミング その1  鳥居秀徳.
ネットワークプログラミング論 平成27年10月12日 森田 彦.
卒研:データベースチーム 第4回 JSP、サーブレット
ファイルの場所に関して.
Web App Semi 2008 #1 Web App Semi 2008 #1.
セッション管理 J2EE I 第9回 /
ビューとコントローラ.
HTTPプロトコルとJSP (1) データベース論 第3回.
Curlの仕組み.
JavaBeans とJSP データベース論 第5回.
HTTPプロトコル J2EE I 第7回 /
第20章 Flyweight ~同じものを共有して無駄をなくす~
Javaプログラムの実行まで バイト Javaの コード 実行 ソースコード Java ファイル名 ファイル名 abc.java
Servlet入門(2) 入力フォームをつかったWebアプリ
ネットワークプログラミング論 平成28年10月17日 森田 彦.
ServletによるWebアプリ作成 入門
ネットワークプログラミング論 平成28年12月12日 森田 彦.
データベース設計 第9回 Webインタフェースの作成(1)
RMI ソフトウェア特論 第6回 /
Javaによる Webアプリケーション入門 第9回
情報技術演習Ⅰ 人文学研究のための情報技術入門 2017/06/22
QuestionnairToolの開発 中村太一.
第8章 Web技術とセキュリティ   岡本 好未.
2004年度 サマースクール in 稚内 JavaによるWebアプリケーション入門
2003年度 データベース論 安藤 友晴.
ネットワークプログラミング論 平成28年11月21日 森田 彦.
TomcatによるWebアプリケーション開発入門
プロジェクト演習Ⅱ インタラクティブゲーム制作 イントロダクション2
総合政策学部4年 伊藤玲子 総合政策学部4年 阿部雅美 +CreWな皆様
WebサービスII (第7回) 2007年11月7日 植田龍男.
Webアプリケーションの方向性 データベース論 第13回.
EclipseでWekaのAPIを呼び出す
ネットワークプログラミング論 平成28年11月7日 森田 彦.
Javaによる Webアプリケーション入門 第6回
ネットワークプログラミング論 平成28年10月31日 森田 彦.
プログラミング演習3 第2回 GUIの復習.
Jakarta Struts (2) ソフトウェア特論 第11回.
Javaによる Webアプリケーション入門 第2回
7.4 intanceof 演算子 7.5~7.9パッケージ 2003/11/28 紺野憲一
JAVAについて 高橋 雅哉.
Javaによる Webアプリケーション入門 第11回
コンピュータ プレゼンテーション.
Servlet ソフトウェア特論 第7回.
Servlet J2EE I (データベース論) 第12回 /
Servlet データベース論 第6回.
JSFによるWebアプリケーション開発 第3回
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
Javaによる Webアプリケーション入門 第8回
Javaによる Webアプリケーション入門 第4回
WebアプリケーションとTomcat ― これまでの復習とこれからの予習 ―
JSPの基本 データベース論 第2回.
JSPの基本 J2EE I (データベース論) 第8回 /
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
第6章 インターネットアプリケーション 6.1 インターネットアプリケーション 6.2 Javaによるネットワーク処理 6.3 電子メール
MVCモデル2による Webアプリケーション
Presentation transcript:

JavaServlet&JSP入門 01K0018 中村太一

目次 Servelt,JSPの概要 Tomcatの導入、実行 Servelt入門 JSP入門 応用例:Servelt +JSP

概要 サーブレットとはサーバ側で動くJavaプログラムで、HTMLの生成や、データベースへのアクセスなどを様々な事を行える。 ブラウザ Servlet リクエスト レスポンス(HTMLなど) サーバ  サーブレットとはサーバ側で動くJavaプログラムで、HTMLの生成や、データベースへのアクセスなどを様々な事を行える。  クライアント側(ブラウザなど)から見ればCGIと同じである。  Servletを実行する為にはWebサーバのほかにServletエンジン(Tomcatなど)と呼ばれるソフトが必要。  JSP(JavaServerPage)とはHTMLの中にJavaのコードを書き手軽にServletが使えるようにしたもの。

Tomcatの導入と実行(win98) Tomcatのインストール http://jakarta.apache.org/ にアクセス。 http://jakarta.apache.org/ にアクセス。 Download → Binaries → Tomcat3.3.1 → → jakarta-tomcat-3.3.1.zip をダウンロード。 Zipファイルを解凍し、そのファイルを「c:\jakarta-tomcat-3.3.1」に置く。 設定 C:\Autoexec.bat をテキストエディタ(メモ帳とか)で開き、“TOMCAT_HOME=C:\jakarta-tomcat-3.3.1”の一行を加える。 C:\jakarta-tomcat-3.3.1\bin\startup.bat のアイコンを  右クリック → 「プロパティ」 → 「メモリ」  「環境変数の初期サイズ」を最大にする。 C:\jakarta-tomcat-3.3.1\bin\shutdown.batについても上と同じように設定する。 実行と終了 実行:C:\jakarta-tomcat-3.3.1\bin\startup.batを実行 終了:C:\jakarta-tomcat-3.3.1\bin\shutdown.batを実行 確認 ブラウザを起動して「http://localhost:8080」にアクセスする (Proxyは外す)

Servleth入門 ① 単純にHTML生成してを返すだけのServletを作ります  クラスファイルはC:\jakarta-tomcat-3.3.1\webapps\test\Web-Inf\classes に保存されるようにします。 Juuilderの「プロパティー」の「出力」にこれを設定して下さい。 import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import java.util.*; public class servletTest extends HttpServlet{ //グローバル変数初期化 public void init( ServletConfig config )throws ServletException{ super.init(config); } //HTTP Getリクエスト public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ String visitor = request.getParameter("name"); if( null == visitor ) visitor = "World"; response.setContentType("text/html"); PrintWriter out = new PrintWriter(response.getOutputStream()); out.println("<html>"); out.println("<body><h1>Hello " + visitor + "</h1></body>"); out.println("</html>"); out.close();

Servlet入門 ② 実行: ブラウザを開いてhttp://localhost:8080/fst/servlet/servletTest にアクセス。  ブラウザに “ Hello, World ”と表示されれば成功。  次にhttp://localhost:8080/fst/servlet/servletTest?name=tom にアクセス ブラウザには “ Hello , Tom “ と表示されます。 Servletの欠点:  Servletでは、HTMLを生成するためにはまず、PrintWriterオブジェクトを生成し 一行のHTMLを生成する毎に out.println(“ ・・・”); と書かなくてはいけません。 これでは、効率が悪くなってしまいます。  また、後からHTML部分を変更したくなった時に変更が難しくなります。 JSP(JavaServerPage)ではこれらの欠点を解決します。

JSP入門 ① ソースの説明: 先ほどのServletの例と同じモノをJSPで実現します。 下記のような「jspTest.jsp」というファイルをC:\jakarta-tomcat-3.3.1\webapps\test に作ってください ソースの説明: <%     String visitor = request.getParameter(“name”); if ( visitor == null ) visitor = “WORLD”; %> “name”パラメータの値をvisitorに代入し、 もし何も無い時は“ WORLD ”を代入する <%= visitor %> visitorをStringとして埋めこむ <HTML> <% String visitor = request.getParameter("name"); if ( visitor == null ) visitor = "WORLD"; %> <BODY> <H1> Hello , <%= visitor %> ! </H1> </BODY> </HTML>

JSP入門 ② 実行: ブラウザからhttp://localhost:8080/fst/jspTest.jsp にアクセスすると ブラウザからhttp://localhost:8080/fst/jspTest.jsp にアクセスすると ブラウザの画面には “ Hello WORLD! ”と表示されるはずです。 次にURLに“ ?name=Tom ”を加えて  http://localhost:8080/fst/jspTest.jsp?name=tom にアクセスします。 すると、 “ Hello tom! ”と表示されます。 JSPを使う理由: 「表示と実装の分離」 取得したデータの処理やデータベースへのアクセスなどの実装をServletが担当し、JSPはServeltから渡されたデータを表示するだけに分離すれば、どちらかを変更しなければいけないとき もう片方を変更しなくてもすみます。 「作業の分担」 表示と実装を分離する事で、実装部分を担当するJavaプログラマはWebページの構成など、表示部分を考えなくてすむ。 表示部分のWebページ開発者はプログラムがどうなっているか、知る必要も考える必要もなくなります。

応用例:Servlet+JSP ① 応用例としてServletとJSPを使ったFAQ(よくある質問と答えを集めたもの)生成アプリケーションの例を紹介します。  Webサイトの管理者がFAQを直接HTMLで書くのではなく、Webサイト経由で作ることができるようなアプリケーションをServletとJSPを使って作ります。

応用例:Servlet+JSP ② JSP Servlet DataBase メニュー 追加 画面 更新 削除 メニュー 更新 画面 削除 画面 保存 DataBase Servlet JSP インターフェース: このアプリケーションを利用するFAQ管理者はFaqの追加、更新、削除などを行います。上の図は、FAQ管理者から見た画面の流れです。 なお、画面は全てJSPで作ります。 アプリケーション設計: 単一の入り口として機能するサーブレットを用意します。このサーブレットは次に表示すべきJSPを呼び出したり、データベースにアクセスしたりします。  ここをサーブレットを使わずにJSPからJSPを呼び出したり、データベースにアクセスする事も可能ですが、そうするとJSPに複雑なJavaコードを書くことになり「表示と実装の分離」が実現しません。

応用例:Servlet+JSP ③ 実行: http://localhost:8080/faqwapp/menu.jsp 参考資料: 「JSPによるWebアプリケーション制作」 おわり。