Microsoft PowerPoint - web_and_dm08_servlet2.pptx

Similar documents
メディプロ1 Javaサーブレット補足資料.ppt

<4D F736F F D A B C982E682E98F6F90C88A6D E646F63>

プレポスト【問題】

Microsoft PowerPoint - Lecture_3

Servlet JSP JSP Servlet/JSP における 日 本 語 の 処 理 - 1

PowerPoint Presentation

WebOTXマニュアル

スライド 1

PowerPoint Presentation

Microsoft PowerPoint - Lecture_2

第13回講義

9iAS_DEV.PDF

Web JavaScript Java Applet Flash ActionScript CGI (C, perl, ruby ) PHP Servlet, JSP (JavaServer Pages) ASP 7-2

Microsoft Word - Appendix_5

Javaと マルチスレッド

Servlet/JSP ( 作成中 ) 2010 年 x 月 x 日作成 Firebird 日本ユーザー会 Naoyuki Sano 1

Web 1 p.2 1 Servlet Servlet Web Web Web Apache Web Servlet JSP Web Apache Tomcat Jetty Apache Tomcat, Jetty Java JDK, Eclipse

II 1 p.1 1 Servlet 1.1 Web Web WWW HTML CGI Common Gateway Interface Web HTML Web Web CGI CGI CGI Perl, PHP C JavaScript Web CGI HTML 1.2 Servlet Java

HTML Java Tips dp8t-asm/java/tips/ Apache Tomcat Java if else f

Web Servlet/JSP JSP

SpringSecurity

HTML Java Tips dp8t-asm/java/tips/ Apache Tomcat Java if else f

--- サーバ側処理 Java servlet の例 // 通常の Java servlet での POST で受信と同じ protected void dopost(httpservletrequest request, HttpServletResponse response) throws S

JavaプログラミングⅠ


SystemDirector Developer's Studio(V3.2) 適用ガイド

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

Microsoft Word 基_シラバス.doc

サーブレット (Servlet) とは Web サーバ側で動作する Java プログラム 通常はapache 等のバックグラウンドで動作する Servletコンテナ上にアプリケーションを配置 代表的な Servlet コンテナ Apache Tomcat WebLogic WebSphere Gla

第 2 章インタフェース定義言語 (IDL) IDL とは 言語や OS に依存しないインタフェース定義を行うためのインタフェース定義言語です CORBA アプリケーションを作成する場合は インタフェースを定義した IDL ファイルを作成する必要があります ここでは IDL の文法や IDL ファイ

Java知識テスト問題

PowerPoint Presentation

WEBシステムのセキュリティ技術

PowerPoint プレゼンテーション

B2-Servlet-0112.PDF

Android Layout SDK プログラミング マニュアル

目次

rcp-add-01:アーキテクチャ設計書

オブジェクト指向プログラミング・同演習 5月21日演習課題

5-1- 応開発フレームワークに関する知識 開発フレームワークを利用した Web アプリケーションの実装方法を理 Ⅰ. 概要解する MVC や OR マッピング DIxAOP といった技術を理解する Ⅱ. 対象専門分野職種共通 Ⅲ. 受講対象者 本カリキュラムの 5-1- 基開発フレームワークに関す

PowerPoint プレゼンテーション

Microsoft PowerPoint - oas4082_NewFeature.ppt[fiLJݔæ‡è’êŠp]

デジタル表現論・第6回

V8.1新規機能紹介記事


Microsoft PowerPoint ppt

1 ユーザ認証を受けた権限で アプリケーションを利用するために ログインプロキシにアクセスします 2 ログインプロキシにより Shibboleth SP から Shibboleth IdP の認証画面にリダイレクトされます 3 ブラウザに認証画面を表示します 4 認証画面にユーザ / パスワードを入

intra-mart Accel Platform — イベントナビゲータ 開発ガイド   初版   None

intra-mart Accel Platform — イベントナビゲータ 開発ガイド   初版  

intra-mart Accel Platform — 外部ソフトウェア接続モジュール 仕様書   第3版  

think9i Oracle Internet File System i を使用した ソフトウェア開発手法 日本オラクル株式会社製品本部システム製品マーケティング部 Copyright 2001 Oracle Corporation Japan. All Rights Reserved.

Eclipse 操作方法 (Servlet/JSP 入門補助テキスト)

WTM2019SingleSignOn

JavaプログラミングⅠ


Apache ActiveMQ における認証処理不備の脆弱性

Java講座

intra-mart im-JavaEE Framework

Si 知識情報処理

intra-mart Accel Platform — IM-共通マスタ スマートフォン拡張プログラミングガイド   初版  

JavaプログラミングⅠ

// このクラスの有効期間中の各呼び出しに使用される キャッシュされた Socket オブジェクト Socket socket = null; // 非同期処理が完了したことを通知するために信号を送るオブジェクト static ManualResetEvent clientdone = new Ma

Apache Tomcatにおけるクロスサイトリクエストフォージェリ(CSRF)保護メカニズム回避の脆弱性

Java プログラミング Ⅰ 3 回目変 数 今日の講義講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能 変数は 型 ( データ型 ) と識別子をもちます 2 型 ( データ型 ) 変数に記憶する値の種類変数の型は 記憶できる値の種類と範囲

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

Microsoft PowerPoint - prog09.ppt

12.1 インターネットアドレス インターネットアドレス インターネットアドレス 32 ビットの長さを持つインターネットに接続されたマシンを識別するのに使う インターネットアドレスは ピリオドで区切られたトークンの並びで表現されることもある インターネットアドレス

Microsoft PowerPoint - prog09.ppt

2016 年度 JAVA 講座第六週目 目次 パッケージ... 2 パッケージの作成... 2 パッケージの使用方法... 3 異なるパッケージ同名クラスの宣言... 4 パッケージの側面から見たアクセス修飾子... 4 ラッパークラス... 5 ラッパークラス利用法:キャスト... 5 ラッパーク

スライド 1

intra-mart Accel Platform

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String

Web データ管理 JavaScript (1) (4 章 ) 2011/12/7( 水 ) 湘南工科大学講義資料 Web データ管理 (2011) 阿倍 1/21

PowerPoint Presentation

第2回講義

9 WEB監視

Oracleセキュア・エンタープライズ・サーチ

intra-mart im-J2EE Framework

ガイダンス

Prog1_10th

intra-mart WebPlatform/AppFramework

はじめに インフォマート API の呼び出しには OAuth2.0 による認証を受ける必要があります OAuth2.0 を使うことで インフォマート API を利用するサービスは インフォマートプラットフォーム ID( 1 以下 PFID) とパスワードを保存したり処理したりすることなく PFID

JavaプログラミングⅠ

スライド 1

V05L14R1 Release News Letter

Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN Exam's Question and Answers 1 from Ac

ガイダンス

Mobile Access簡易設定ガイド

Microsoft PowerPoint - OOP.pptx

2006

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問

PowerPoint プレゼンテーション

付録 2 システムログ一覧 () 攻撃経路 1. ファイアウォール (FW) ネットワーク型 IPS/IDS Web サーバ AP サーバ DB サーバ プロキシサーバ エラーログ SSL ログ AP ログ ホストログ 非 日時 ファイアウォールホスト名 ファイアウォールルール名及び番号 インバウン

Prog1_6th

HCI プログラミング 10 回目テキストフィールドとキーイベント 今日の講義で学ぶ内容 テキストフィールドの利用 キーイベントの処理 テキストフィールドの利用 1 テキストフィールドを配置してみましょう テキストフィールドを用いることにより 数値や文字列などのデータ入力が可能になります ソースファ

Webアプリケーション構築 Java 7版

ArcGIS Runtime SDK for .NET アプリケーション配布ガイド

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt)

Chromeleon 6 for Chromeleon 6.8 SR15 Build: --- 新しいシーケンスの作成に使用できるワークリストファイル (.wle) Doc. Nr: CM6_68150_0020 Doc. Ver.: Doc. Type: Guide

Transcription:

Webとデータモデリング Java によるサーバサイドプログラミング 北川博之, 森嶋厚行, 天笠俊之 1 Java Server Pages (JSP) の利用 2 Web とデータモデリング 1

サーブレットのコード例 public class HelloWorld extends HttpServlet { public void doget(httpservletrequest request, HttpServletResponse response) throws IOException, ServletException{ } } response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<html>"); out.println("<head>"); out.println("<title>hello World!</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>hello World!</h1>"); out.println("</body>"); out.println("</html>"); 3 サーブレットと JSP サーブレット 全てのコードを Java で記述 HTML は文字列として埋め込む テキスト (Java ソース ) からクラスファイルを生成 JSP コンパイルが必要 HTML ページの中に Java コードを埋め込み プログラム処理が必要な部分に集中してコードを記述 HTML 出力がメインの場合に有利 HTMLソースからJavaソースを生成 コンパイルはシステムが自動的に実行 4 Web とデータモデリング 2

JSP のコード例 <%@ page contenttype="text/html;charset=shift_jis" %> <html> <head> <title>hello World!</title> </head> <body> <h1>hello World!</h1> <% out.println(new java.util.date()); %> 5 実行までの流れ コンテキストファイルの作成 apache tomcat/conf/context.xml JSP ページの作成 HTMLと同様 拡張子は.jsp アプリケーションの実行 ブラウザでアクセス ポイント コンパイル不要 web.xml の設定も不要 6 Web とデータモデリング 3

JSP からサーブレットへの変換 処理手順 クライアントからの要求 JSP からサーブレットへの変換 サーブレットのコンパイル サーブレット実行 ポイント コンパイルは初回のみ 初回実行時はやや時間がかかる コンパイルされたファイルの場所 $HOME/apache tomcat/work/catalina/localhost/ 7 ディレクティブ 構文 <%@ name attr1= val1 attr2= val2"... %> 種類 page include taglib 8 Web とデータモデリング 4

page ディレクティブ <%@ page [ language="java" ] [ extends="package.class" ] [ import="{package.class package.*},..." ] [ session="true false" ] [ buffer="none 8kb sizekb" ] [ autoflush="true false" ] [ isthreadsafe="true false" ] [ info="text" ] [ errorpage="relativeurl" ] [ contenttype="mimetype [ ; charset=characterset ]" "text/html ; charset=iso 8859 1" ] [ iserrorpage="true false" ] [ pageencoding="characterset ISO 8859 1" ] [ iselignored="true false"] %> 9 include ディレクティブ 構文 <%@ include file="relativeurl" %> 意味 指定された場所に HTML や JSP を読み込む. ポイント 相対パスのルートは, コンテキストのルート 10 Web とデータモデリング 5

taglib ディレクティブ 構文 <%@ taglib {uri="uri" tagdir="/web INF/tags[/subdir]+"} prefix="tagprefix" %> 意味 頻繁に使われる処理をまとめてタグとして登録 タグを集めたものがタグライブラリ 標準タグライブラリ カスタムタグライブラリ 11 スクリプティング スクリプトレット <% Javaのコード %> 式の評価結果を出力 <%= 変数名など %> out.print() に変換される 記述例 <%= " こんにちは " %> <%= "sum = " + sum %> <%= Integer.parseInt(8) %> 12 Web とデータモデリング 6

スクリプティング 変数の宣言 スクリプトレットで宣言される変数はローカル変数 呼び出しごとに初期化される Tomcatが実行されている間有効な変数を宣言したい <%! %> の利用 <%! int count = 0; %> <%! %> を利用して, メソッドも宣言できる 13 14 Web とデータモデリング 7

暗黙オブジェクト 15 暗黙オブジェクト宣言しなくても使えるオブジェクト オブジェクト 実装クラス 概要 コンテナ情報 ユーザー間での共 application javax.servlet.servletcontext 有情報を管理 web.xmlで定義した初期化パラ config javax.servlet.servletconfig メーターにアクセス out javax.servlet.jsp.jspwriter クライアントにデータを返却 exception java.lang.throwable ページ内の例外情報を管理 page javax.servlet.jsp.httpjsppage JSPページそのものを表現 pagecontext request response 16 javax.servlet.jsp.pagecontext javax.servlet.http.http.servle trequest javax.servlet.http.http.servle tresponse JSPページで利用可能な各種の暗黙オブジェクトやスコープ属性にアクセスする手段を提供 リクエストメッセージを取得 ステータスコードやメッセージヘッダのデータを設定 session javax.servlet.http.httpsession 各ユーザーのセッションを管理 Web とデータモデリング 8

out オブジェクト クライアントに対してコンテンツを出力 バッファ処理の制御 バッファサイズの指定 @pageディレクティブ buffer 属性 バッファサイズを超えたときの振る舞い @pageディレクティブ autoflush 属性 17 out オブジェクト主要メソッド メソッド 概要 clear() バッファのデータをクリア ( 出力済み バッファ処理が無効の場合はエラー ) clearbuffer() バッファのデータをクリア ( バッファの内容が出力済みでも使用可 ) close() 出力を終了 flush() バッファの内容を強制的に出力 getbuffersize() 現在確保されているバッファのサイズ ( バイト単位 ) getremaining() 未使用バッファのサイズ ( バイト単位 ) isautoflush() newline() print(str) println(str) 18 true の場合 出力サイズがバッファを超えたタイミングで自動出力 (falseの場合はエラー) 改行文字を出力 (Windows 系 OS では n UNIX 系 OS では n r ) 文字列 str を出力 文字列 str を末尾に改行付きで出力 Web とデータモデリング 9

request オブジェクト クライアントからのリクエスト情報を受け取る リクエスト情報 フォームデータ ヘッダ情報 クッキー 19 request オブジェクト主要メソッド メソッド getattribute() getauthtype() getcontentlength() getcontextpath() getlocale() getmethod() getpathinfo() getremoteaddr() getremoteuser() getservletpath() isrequestedsessionidfromcookie() isuserinrole(role) removeattribute 20 setattribute 概要リクエスト属性を取得認証の種類を取得データ本体のバイト長を取得コンテキストパスを取得ロケールを取得 HTTPメソッドの種類を取得拡張パス情報を取得クライアントのIPアドレスを取得ログインユーザー名を取得サーブレットパスを取得セッションIDをクッキー経由で授受しているかカレントユーザーが権限 roleを持っているかリクエスト属性を削除リクエスト属性を設定 Web とデータモデリング 10

Cookie クラス クッキーデータの表現, 制御 生成方法 Cookie 変数 = new Cookie( クッキー名, クッキー値 ); 21 Cookie クラス主要メソッド メソッド 概要 getcomment()/setcomment(str) コメントの取得 / 設定 getdomain()/setdomain(str) 対象ドメインの取得 / 設定 getmaxage()/setmaxage(int) 有効期限の取得 / 設定 ( 秒 ) getname() クッキー名の取得 getpath()/setpath(str) 対象パスの取得 / 設定 getsecure()/setsecure(bln) SSL 通信要否の取得 / 設定 getvalue()/setvalue(str) クッキー値の取得 / 設定 getversion()/setversion(int) バージョン値の取得 / 設定 22 Web とデータモデリング 11

session オブジェクト 画面間の共有データを管理 セッション あるユーザがあるサイトにアクセスしてから立ち去るまで ページ間で共有すべき情報を管理 Perl+CGI 時代は, データベースかクッキーを利用 注意 @pageディレクティブのsession 属性がfalseのときは利用できない セッションは永続的に保持されるわけではない 23 session オブジェクト主要メソッド メソッド getattributenames() getcreationtime() getid() getlastaccessedtime() getmaxinactiveinterval() invalidate() isnew() removeattribute(name) setmaxinactiveinterval(interval) 概要すべてのセッション属性名を取得セッションの生成時刻を取得セッションを一意に識別するIDを取得セッションへの最終アクセス時刻を取得セッションのタイムアウト時間を取得セッションを破棄新しく生成されたセッションかどうか指定されたセッション属性 (name) を削除セッションタイムアウトをinterval 秒に設定 24 Web とデータモデリング 12