「1.3 HttpServletレスポンスのインタフェースを使用して、以下のコードを書き出す」の版間の差分
ナビゲーションに移動
検索に移動
| (同じ利用者による、間の1版が非表示) | |||
| 1行目: | 1行目: | ||
====レスポンスヘッダを設定する==== | ====レスポンスヘッダを設定する==== | ||
| − | response. | + | response.set[[Header]]("Last-Modified", "Sat, 01 Apr 2006 15:49:15 GMT"); |
| − | + | [http://www.ietf.org/rfc/rfc2616.txt RFC 2616] | |
| − | + | [http://www.studyinghttp.net/ HTTP] | |
ヘッダーは、レスポンスについての追加情報を名前と値のペアで送るために利用される | ヘッダーは、レスポンスについての追加情報を名前と値のペアで送るために利用される | ||
| − | + | [http://www.studyinghttp.net/header#Date setDateHeader|http://java.sun.com/j2ee/1.4/docs/api/javax/servlet/http/HttpServletResponse.html]を利用すると、[RFC 1123 の時刻フォーマット]で時刻を設定してくれる | |
====レスポンスオブジェクトのコンテンツタイプを設定する ==== | ====レスポンスオブジェクトのコンテンツタイプを設定する ==== | ||
| 13行目: | 13行目: | ||
response.setContentType("application/jar"); | response.setContentType("application/jar"); | ||
| − | String path = getServletContext(). | + | String path = getServletContext().get[[R]]ealPath("/jsp/swc.jar"); |
FileInputStream in = new FileInputStream(new File(path)); | FileInputStream in = new FileInputStream(new File(path)); | ||
OutputStream out = response.getOutputStream(); | OutputStream out = response.getOutputStream(); | ||
| 21行目: | 21行目: | ||
out.write(buf); | out.write(buf); | ||
} | } | ||
| − | ==== | + | ====他のURLへ[[HTTP]]リクエストをリダイレクトする ==== |
String url = "http://www.google.co.jp/search?hl=ja&q=scwcd&lr=lang_ja"; | String url = "http://www.google.co.jp/search?hl=ja&q=scwcd&lr=lang_ja"; | ||
| − | response. | + | response.send[[R]]edirect(url); |
====レスポンスオブジェクトにクッキーを追加する ==== | ====レスポンスオブジェクトにクッキーを追加する ==== | ||
| − | Cookie cookie = new Cookie("request_time", (new Date()).toString() ); | + | [[Cookie]] cookie = new [[Cookie]]("request_time", (new Date()).toString() ); |
| − | response. | + | response.add[[Cookie]](cookie); |
====まとめ==== | ====まとめ==== | ||
=====[http://java.sun.com/j2ee/1.4/docs/api/javax/servlet/ServletResponse.html ServletResponse]===== | =====[http://java.sun.com/j2ee/1.4/docs/api/javax/servlet/ServletResponse.html ServletResponse]===== | ||
| 58行目: | 58行目: | ||
|- | |- | ||
|void | |void | ||
| − | | | + | |set[[Header]](String name,String value) |
|レスポンスヘッダを設定 | |レスポンスヘッダを設定 | ||
|- | |- | ||
|void | |void | ||
| − | | | + | |add[[Header]](String name,String value) |
|レスポンスヘッダを追加 | |レスポンスヘッダを追加 | ||
|- | |- | ||
|void | |void | ||
| − | | | + | |setInt[[Header]](String name,int value) |
|レスポンスヘッダ(整数値)を設定 | |レスポンスヘッダ(整数値)を設定 | ||
|- | |- | ||
|void | |void | ||
| − | | | + | |addInt[[Header]](String name,int value) |
|レスポンスヘッダ(整数値)を追加 | |レスポンスヘッダ(整数値)を追加 | ||
|- | |- | ||
|void | |void | ||
| − | | | + | |setDate[[Header]](String name,long date) |
|レスポンスヘッダ(日付)を設定 | |レスポンスヘッダ(日付)を設定 | ||
|- | |- | ||
|void | |void | ||
| − | | | + | |addDate[[Header]](String name,long date) |
|レスポンスヘッダ(日付)を追加 | |レスポンスヘッダ(日付)を追加 | ||
|- | |- | ||
|boolean | |boolean | ||
| − | | | + | |contains[[Header]](String name) |
|指定ヘッダがすでに設定されているか | |指定ヘッダがすでに設定されているか | ||
|- | |- | ||
|void | |void | ||
|sendRedirect(String location) | |sendRedirect(String location) | ||
| − | | | + | |[[HTTP]]リクエストをリダイレクト |
|- | |- | ||
|void | |void | ||
| − | | | + | |add[[Cookie]]([[Cookie]] cookie) |
|クッキーを追加 | |クッキーを追加 | ||
|- | |- | ||
| 98行目: | 98行目: | ||
[[File:0080_servlet_reaponse.jpg]] | [[File:0080_servlet_reaponse.jpg]] | ||
---- | ---- | ||
| − | 1.2 HttpServletRequestインタフェースを使用して、以下のコードを書き出す | + | [[1.2 HttpServletRequestインタフェースを使用して、以下のコードを書き出す]] |
| − | 1.4 サーブレットのライフサイクルの目的とイベントシーケンスを説明する | + | [[1.4 サーブレットのライフサイクルの目的とイベントシーケンスを説明する]] |
{{amazon|1932394389}} | {{amazon|1932394389}} | ||
| − | + | [http://www.amazon.co.jp/dp/1932394389?tag=typea09-22&link_code=as3&creativeASIN=1932394389&creative=3999&camp=767 SCWCD Exam Study Kit: Java Web Component Developer Certification (ペーパーバック)] | |
2020年2月16日 (日) 04:21時点における最新版
目次
レスポンスヘッダを設定する
response.setHeader("Last-Modified", "Sat, 01 Apr 2006 15:49:15 GMT");
RFC 2616 HTTP ヘッダーは、レスポンスについての追加情報を名前と値のペアで送るために利用される setDateHeader|http://java.sun.com/j2ee/1.4/docs/api/javax/servlet/http/HttpServletResponse.htmlを利用すると、[RFC 1123 の時刻フォーマット]で時刻を設定してくれる
レスポンスオブジェクトのコンテンツタイプを設定する
response.setContentType("text/html;charset=Shift_JIS");
レスポンスオブジェクトに対しテキストストリームを取得する
PrintWriter out = response.getWriter();
レスポンスオブジェクトに対しバイナリストリームを取得する
response.setContentType("application/jar");
String path = getServletContext().getRealPath("/jsp/swc.jar");
FileInputStream in = new FileInputStream(new File(path));
OutputStream out = response.getOutputStream();
byte[] buf = new byte[255];
while ( in.read(buf) >= 0) {
out.write(buf);
}
他のURLへHTTPリクエストをリダイレクトする
String url = "http://www.google.co.jp/search?hl=ja&q=scwcd&lr=lang_ja"; response.sendRedirect(url);
レスポンスオブジェクトにクッキーを追加する
Cookie cookie = new Cookie("request_time", (new Date()).toString() ); response.addCookie(cookie);
まとめ
ServletResponse
| 戻値 | メソッド | 備考 |
|---|---|---|
| void | setContentType(String type) | コンテンツの長さを設定 |
| void | setContentLength(int len) | コンテンツタイプを設定 |
| PrintWriter | getWriter() | テキストストリームを取得 |
| ServletOutputStream | getOutputStream() | バイナリストリームを取得 |
HttpServletResponse
| 戻値 | メソッド | 備考 |
|---|---|---|
| void | setHeader(String name,String value) | レスポンスヘッダを設定 |
| void | addHeader(String name,String value) | レスポンスヘッダを追加 |
| void | setIntHeader(String name,int value) | レスポンスヘッダ(整数値)を設定 |
| void | addIntHeader(String name,int value) | レスポンスヘッダ(整数値)を追加 |
| void | setDateHeader(String name,long date) | レスポンスヘッダ(日付)を設定 |
| void | addDateHeader(String name,long date) | レスポンスヘッダ(日付)を追加 |
| boolean | containsHeader(String name) | 指定ヘッダがすでに設定されているか |
| void | sendRedirect(String location) | HTTPリクエストをリダイレクト |
| void | addCookie(Cookie cookie) | クッキーを追加 |
クラス図
1.2 HttpServletRequestインタフェースを使用して、以下のコードを書き出す 1.4 サーブレットのライフサイクルの目的とイベントシーケンスを説明する
SCWCD Exam Study Kit: Java Web Component Developer Certification (ペーパーバック)
© 2006 矢木浩人
