web-dev-qa-db-ja.com

春のリクエストスコープとセッションスコープの違いは何ですか?

リクエストスコープでは、BeanはHTTPリクエストに定義されますが、セッションスコープでは、HTTPセッションにスコープされます。したがって、インスタンスの場合、

beanスコープがrequestであり、ユーザーが自分のユーザーセッションでWebページに対して複数のリクエストを行う場合、リクエストごとに新しいBeanが作成されます。

一方、スコープがsessionとしてBeanに対して定義されている場合、ユーザーがWebページを2回以上リクエストすると、すべてのリクエストで同じBeanが返されます。

この理解が正しいかどうか教えてください?

10
greenHorn

あなたの理解は正しいです。しかし何かを追加したいと思います

一方、スコープがBeanのセッションとして定義されている場合、ユーザーがWebページを2回以上リクエストすると、すべてのリクエストで同じBeanが返されます。

スコープがBeanのセッションとして定義されている場合、ユーザーがWebページを2回以上リクエストすると、すべてのリクエストで同じBeanが返されます。リクエストが同じユーザーセッション内にあり、セッションを維持できるクライアントから行われる限り(Cookie /セッション識別子ヘッダーを渡さない限り、curlがユーザーセッションを維持することは期待できません) 。

9
so-random-dude

Session Scope-スコープがセッションの場合、formbean(form data)の値はセッション全体で使用できます。セッションがタイムアウトするか、セッションが破棄されるまで、破棄されません。

Request Scope-スコープがrequestの場合、formbean(form data)の値は現在のリクエストで使用できます。同じユーザー/別のユーザーのすべてのリクエストで更新されます。

httpはステートレスプロトコルであるため

1
Ved Prakash