Javaによる Webアプリケーション入門 第6回

Slides:



Advertisements
Similar presentations
年度 J2EE II 稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴. 2 この講義の位置づけ 3年前期の「データベース論 (J2EE I) 」に続く講義。 「データベース論」の講義内容を理解 していることが前提。
Advertisements

第6章 インターネットアプリケー ション 6.1 インターネットアプリケーション 6.2Java によるネットワーク処理 6.3 電子メール 6.4Web アプリケーション 6.5 チャットアプリケーション.
Web アプリケーション開発入門 大岩研究会 今野隆平 2002 年 5 月 9 日 Introduction to Web Application Development.
1 JSP の作成 JSF による Web アプリケーション 開発 第 4 回. 2 ここでの内容 JSF での JSP の作り方と動かし方につい て学ぶ。
1 安全性の高いセッション管理方 式 の Servlet への導入 東京工業大学 理学部 千葉研究室所属 99-2270-6 松沼 正浩.
Servlet 矢口 洋介 清水 麗雄. 準備  Java フォルダに入ってから mkdir Servlet ln – s ~/public_html/Servlet.  フォルダの移動 cd public_html/Servlet/WEB-INF/classes/*.  ファイルのコピー cp.
知的システム構築工房   Linux設定セミナーシリーズ 第5回 Webアプリ作成 2011年3月16日(水) 株式会社 アセンディア 1.
JPAを利用した RESTful Webサービスの開発
2006年11月22日 植田龍男 Webサービス II (第9回) 年11月22日 植田龍男.
Struts1.xの脆弱性(CVE ) に対するSDEの対処:推奨タイプ (サンプルソースコードの公開)
Applet 岡部 祐典 鈴木 敬幸.
Struts1.xの脆弱性(CVE ) に対するSDEの対処:wrapタイプ (パッチのご提供)
WebサービスII (第10回) 2007年11月28日 植田龍男.
エンタープライズアプリケーション II 第10回 / 2006年7月23日
JSFによるWebアプリケーション開発 第11回
Servlet J2EE I 第8回 /
アプレット (Applet)について.
Servlet入門(2) 入力フォームをつかったWebアプリ
Iアプリプログラミング その1  鳥居秀徳.
ネットワークプログラミング論 平成27年10月12日 森田 彦.
JavaServlet&JSP入門 01K0018 中村太一.
タグライブラリ ソフトウェア特論 第6回.
WebサービスII (第8回) 2007年11月14日 植田龍男.
HTTPプロトコルとJSP (1) データベース論 第3回.
Curlの仕組み.
JavaBeans とJSP データベース論 第5回.
JSFによるWebアプリケーション開発 第6回
HTTPプロトコル J2EE I 第7回 /
Javaプログラムの実行まで バイト Javaの コード 実行 ソースコード Java ファイル名 ファイル名 abc.java
JSPの作成 J2EE II 第3回 2005年4月10日.
アプレット プログラミング 第10回 アプレット プログラミング第10回.
Servlet入門(2) 入力フォームをつかったWebアプリ
ネットワークプログラミング論 平成28年10月17日 森田 彦.
ServletによるWebアプリ作成 入門
RMI ソフトウェア特論 第6回 /
Javaによる Webアプリケーション入門 第5回
第8章 Web技術とセキュリティ   岡本 好未.
2004年度 サマースクール in 稚内 JavaによるWebアプリケーション入門
2003年度 データベース論 安藤 友晴.
ネットワークプログラミング論 平成28年11月21日 森田 彦.
TomcatによるWebアプリケーション開発入門
JDBC J2EE I 第4回 /
独習JAVA 6.8 コンストラクタの修飾子 6.9 メソッドの修飾子 6.10 ObjectクラスとClassクラス 11月28日(金)
総合政策学部4年 伊藤玲子 総合政策学部4年 阿部雅美 +CreWな皆様
Webアプリケーションの方向性 データベース論 第13回.
理学部 情報科学科 指導教官 千葉 滋 助教授 学籍番号 03_03686 内河 綾
ネットワークプログラミング論 平成28年11月7日 森田 彦.
JDBC データベース論 第12回.
ネットワークプログラミング論 平成28年10月31日 森田 彦.
Javaによる Webアプリケーション入門 第7回
Jakarta Struts (2) ソフトウェア特論 第11回.
Javaによる Webアプリケーション入門 第2回
7.4 intanceof 演算子 7.5~7.9パッケージ 2003/11/28 紺野憲一
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回.
Jakarta Struts (1) ソフトウェア特論 第10回.
JSPの基本 J2EE I (データベース論) 第8回 /
プログラミング基礎a 第9回 Java言語による図形処理入門(1) Javaアプレット入門
第6章 インターネットアプリケーション 6.1 インターネットアプリケーション 6.2 Javaによるネットワーク処理 6.3 電子メール
MVCモデル2による Webアプリケーション
Presentation transcript:

Javaによる Webアプリケーション入門 第6回 Servlet Javaによる Webアプリケーション入門 第6回

ここでの内容 Servlet の概要について学ぶ。特に、HTTPの要求と応答との関係に着目する。 Servlet の動かし方を学ぶ。

Servletの基本

Servlet とは (1) JSPと同じく、Webブラウザからのリクエストを処理して動的なページを作成するためのもの。 JSPと同じく、Tomcat などの Webコンテナの内部で動く。

Servlet とは (2) HttpServlet というクラスを継承したクラス。必要なメソッドをオーバーライドする。 CGIと同じように、プログラムの中から HTML を出力できる。 JSPも、Tomcatの内部では Servlet に変換される。

Servlet のメソッド HTTPのGETメソッドに対して  doGet public void doGet( HttpServletRequest req, HttpServletResponse res) HTTPのPOSTメソッドに対して  doPost public void doPost( HttpServletRequest req, HttpServletResponse res)

HttpServletRequest と HttpServletResponse HTTPの「要求」に対応する HttpServletResponse HTTPの「応答」に対応する

HTMLの出力 HttpServletResponse 型のオブジェクトである response から PrintWriter オブジェクトを取り出す。 HTTPの応答で、HTMLの出力を行うから PrintWriter オブジェクトの println() あるいは print() メソッドで HTML を書き出す PrintWriter out = response.getWriter(); out.println(“<html>”);

Servletでの要求・応答の処理

HttpServletRequest と HttpServletResponse HTTPの「要求」に対応する HttpServletResponse HTTPの「応答」に対応する

要求のヘッダ情報の取得 HttpServletRequest 型のオブジェクトである request から ヘッダ情報の Enumeration を取り出す。 Enumeration e = request.getHeaderNames();

Enumeration について オブジェクトを「つぎつぎと」処理していくためのオブジェクト Enumeration e = request.getHeaderNames(); while (enum.hasMoreElements()) { String name = (String)enum.nextElement(); out.print(name + ": "); }

クエリーの処理 HttpServletRequest 型のオブジェクトである request を取得する。 request.getParameter(“familyName”) を実行。

Tomcat で Servlet を動かす

Servlet のコンパイル 次のパッケージはJ2SEには入っていない。 javax.servlet パッケージ javax.servlet.http パッケージ Tomcat 中のjarファイルにこのパッケージが含まれているので、classpath に含めてコンパイル javac –classpath “%CATALINA_HOME%\common\lib\servlet-api.jar” LoopServlet.java

Tomcat への配置 Servlet はコンパイルしておくこと。 WEB-INF/classes フォルダに置く。 WEB-INF/ --- web.xml |- classes/ --- LoopServlet.class | |- DateServlet.class |- lib/

web.xml の編集 Servlet を置いただけでは動かない。 web.xml を編集する必要あり。

web.xml の例 (抜粋) <servlet> <servlet-name>loop</servlet-name> <servlet-class>LoopServlet</servlet-class> </servlet> (中略) <servlet-mapping> <url-pattern>/loop</url-pattern> </servlet-mapping>

Servlet へのアクセス web.xml の url-pattern 要素で指定した URL にアクセスする。 http://localhost:8080/test/loop http://localhost:8080/test/date