1

この期間、私は STS ダッシュボードからダウンロード可能な Spring MVC ショーケースの例を研究しています。

私の home.jsp ビューには、次のリンクがあります。

<a id="request" class="textLink" href="<c:url value="/data/standard/request" />">Request arguments</a>

このリンクは、URL への HTTP リクエストを生成します: "/data/standard/request"

これは、この HTTP 要求を処理するコントローラー クラスのメソッドです。

@RequestMapping(value="/data/standard/request", method=RequestMethod.GET)
public @ResponseBody String standardRequestArgs(HttpServletRequest request, Principal user, Locale locale) {
    StringBuilder buffer = new StringBuilder();     // Rappresenta un buffer (sequenza mutabile di caratteri) API compatibile con StreamBuffer
    buffer.append("request = ").append(request).append(", ");
    buffer.append("userPrincipal = ").append(user).append(", ");
    buffer.append("requestLocale = ").append(locale);
    return buffer.toString();
}

このメソッドは 3 つのパラメーターを取り、これらのいくつかを明確にしていません。

  • HttpServletRequest リクエスト: javadoc を読むと、このオブジェクトを読むことができます: ServletRequest インターフェースを拡張して、HTTP サーブレットのリクエスト情報を提供しますが、どのような情報ですか?

このオブジェクトに関連するバッファの内容は次のとおりです: request = org.apache.catalina.connector.RequestFacade@62c77dc3正確にはどういう意味ですか?

  • プリンシパル ユーザー: javadoc を読むと、次のオブジェクトが読み取れます: *このインターフェイスはプリンシパルの抽象的な概念を表し、個人、企業、ログイン ID などのエンティティを表すために使用できます。*

このオブジェクトに正確に何を入れることができるのか、またバッファ内の関連コンテンツが null である理由がわかりません

誰かが私を助けることができますか?

ありがとう

アンドレア

4

2 に答える 2

2

HttpServletRequest:コンテナによって埋められるオブジェクト。オブジェクトは、サーブレットコンテナ、つまり、Tomcat、weblogicなどのサーバーによって埋められます。オブジェクトには、リクエストパラメータの情報、セッション情報が含まれています。このオブジェクトをほとんど制御できません。

プリンシパルユーザー:アプリケーションにアクセスするためにコンテナーにログインしたユーザー。コンテナにセキュリティを追加した場合、オブジェクトはログインしたユーザーの詳細を提供します:ユーザー名、役割(実際の情報)。

ロケールロケール:Webアプリケーションにアクセスするユーザーのロケール。

StringBufferの応答に関する限り、HttpServletRequestのオブジェクトへの参照が出力されます。オブジェクトはサーブレットコンテナによって埋められます。

于 2012-12-15T09:56:12.400 に答える
1

このオブジェクトに関連するバッファーの内容は次のとおりです。request=org.apache.catalina.connector.RequestFacade@62c77dc3正確にはどういう意味ですか?

コンテナ(この場合はtomcat)のオブジェクト実装を要求します。HttpServletRequestオブジェクトには、parameters / header / method / urlなどのように多くのデータ(httpリクエストに関して)がカプセル化されています。javaサーブレット仕様を読む必要があります。http://download.oracle.com/otndocs/jcp/servlet-2.4- fr-spec-oth-JSpec /

Tomcatはこの仕様の実装です。

また、プリンシパルとロケールをnullとして取得していますか?http://static.springsource.org/spring/docs/3.0.x/reference/mvc.htmlによると、 これらは有効なコントローラーメソッド引数です。

于 2012-12-15T09:55:18.937 に答える