タグ

Javaとservletに関するknakamura1977のブックマーク (7)

  • Servlet(サーブレット)リファレンス:javax.servlet.http.HttpServletRequest#getParameterMap()

    public class SampleServlet extends HttpServlet { public void doGet( HttpServletRequest request, HttpServletResponse response ) throws ServletException,IOException { response.setContentType("text/html;charset=Windows-31J"); PrintWriter out = response.getWriter(); out.println("<html><body>"); Map map = request.getParameterMap(); Iterator it = map.keySet().iterator(); while (it.hasNext()) { String na

    knakamura1977
    knakamura1977 2012/04/05
    なんかgetParameterMapはうまくいかなかった。
  • サーブレットの様々なサンプル - セッションの管理 -

    セッションについて Java サーブレットは HTTP プロトコルを使用します。HTTP はステートレスプロトコルです。 サーバは、リクエストを受け取ってレスポンスを返すと、クライアント ( ブラウザ ) との接続を終了します。 サーバにはクライアントを一意に識別できる情報を持っていないため、クライアントの情報は維持されません。 ( サーバはどのクライアントがどの情報を持っていたかを判断できない。 ) 上記の問題を解決するための仕組みがセッション管理となります。 セッションとは、簡単に説明するとクライアントがサーバに接続してから切断するまでの 1 接続単位です。 一般的には 1 リクエスト単位ではなく、例えば、ユーザがログインしてからログアウトもしくは、 ブラウザを閉じるなどの操作を行うまでの間を表します。 1 セッションの間には、複数回のリクエスト送信、レスポンス受信が

    knakamura1977
    knakamura1977 2012/03/28
    とても参考になりました。
  • [実装編]スレッドセーフにすることを忘れてはいけない

    スレッドセーフとは,アプリケーションをマルチスレッドで動作させても問題がないことを指す。サーバー向けアプリケーションは,マルチスレッドで動作するように設計・実装することが望ましい。そのほうが通常はパフォーマンスが向上するからだ。 だが,マルチスレッドのアプリケーションは,注意深く設計・実装しないとトラブルが生じる。例えば,あるスレッドで保持していた変数の値がほかのスレッドからアクセスされ,処理結果が上書きされたり,ほかの利用者の情報が見えてしまったりする。 こうしたトラブルは,開発者が1人で単体テストしているときには見つけられず,多数の利用者で限界時の挙動テストをしたときや,番移行した後で,たまたま見つかることが多い。トラブルが発生するタイミングを再現することが難しいので,デバッグは困難になりがちだ。 マルチスレッドでのトラブルを防ぐため,開発者は,スレッドセーフな設計と実装を心がける必

    [実装編]スレッドセーフにすることを忘れてはいけない
    knakamura1977
    knakamura1977 2012/03/27
    Actionはスレッドセーフでは「ない」。
  • 悪文:[JAVA][J2EE]Filterを使ったクロスサイト・スクリプティング対策 - livedoor Blog(ブログ)

    プロジェクトでクロスサイト・スクリプティング(XXS)対策が必要になったので、対策方法を考えた。 ■クロスサイト・スクリプティングの対策方法 クロスサイト・スクリプティング対策には、HTMLの特殊文字である「“<”、“>”、“&”」をすべてエスケープ処理してから表示するようにすればよい。どのように変換すればいいのかというと次のようにやる。 エスケープしなければならない特殊文字 : ”&” → &amp; ”<” → &lt; ”>” → &gt; ”"” → &#034; ”'” → &#039; ▼参考資料 @IT: クロスサイトスクリプティング対策の基 http://www.atmarkit.co.jp/fsecurity/special/30xss/xss01.html http://www.atmarkit.co.jp/fsecurity/special/31xss/xss01.

    knakamura1977
    knakamura1977 2012/03/07
    XSS対策のため読みました。
  • サーブレット・フィルタの理解および使用方法

    Oracle Containers for J2EE サーブレット開発者ガイド 10g リリース3(10.1.3) B28596-01 5 サーブレット・フィルタの理解および使用方法 サーブレット・コンテナが、クライアントにかわってサーブレット内のメソッドをコールすると、クライアントが送信したHTTPリクエストは、デフォルトで、サーブレットに直接渡されます。サーブレットが生成するレスポンスは、コンテナによる内容の修正なしに、デフォルトでクライアントに直接返されます。 これに対して、サーブレット・フィルタを使用して、Webアプリケーション・リクエストの前処理やサーバー・レスポンスの後処理を実行できます。フィルタについては、「前処理および後処理のためにフィルタを使用する場面」で簡単に説明しましたが、次の項で詳しく説明します。 フィルタ機能の概要 標準Filterインタフェース フィルタの実装お

    knakamura1977
    knakamura1977 2012/03/07
    リクエストをフィルタリングする必要があるときには。
  • web.xml 要素リファレンス

    web_app_2_3.dtdに基づいたweb.xmlの各要素に関するリファレンスです。 JavaPress誌Vol22/23に掲載された「ピンポイントJSP&サーブレット」 という記事の原稿をもとにして、 コラムなどを末尾に移動して見通しをよくしたものを公開します。 校正前の原稿(プレインテキスト)を元にしていますので、 見栄えなどはあまり考慮していません。 また、雑誌記事口調の部分と、適当に省略して不自然になっている文が 混じってます_o_。 間違いのご指摘はshin@sk-jp.comまでお願いします。 Webアプリケーションとは web.xml詳細 各要素の説明 開発者のサポートのための要素 <distributable>? <context-param>* <param-name> <param-value> <description>? <filter>* <icon>? <f

    knakamura1977
    knakamura1977 2012/02/23
    いろいろあるよ~。
  • Javaの道:Servlet(4.スコープ)

    スコープの種類 スコープとは、データの有効範囲のことです。Servletでは、requestスコープ、sessionスコープ、applicationスコープの3つのスコープがあります。HTTPセッション間でデータを共有したい場合はsessionスコープ、webアプリケーション間でデータを共有したい場合はapplicationスコープというようにデータの有効範囲によりスコープを使い分けます。データの操作には通常JavaBeansを使用しますが、ここではServletで行う方法について解説します。 requestスコープ requestスコープはリクエスト間でデータを共有したい場合に使用します。requestスコープでデータを操作する場合は、HttpServletRequestインタフェースのオブジェクトを使用します。forwardメソッドなどでHttpServletRequestインタフェー

    Javaの道:Servlet(4.スコープ)
    knakamura1977
    knakamura1977 2012/02/23
    applicationスコープはやっぱあるよね。Webアプリケーションの仕組みとして。
  • 1