5

現在のユーザー セッションへの追加と読み取りを可能にする小さな Java クラスを作成する必要があります。

私が見ているものはすべてサーブレットを参照していますが、理想的には単純な古いクラスを使用したいと思っています。

誰かこの Java 初心者を助けてくれませんか?

ありがとう

4

4 に答える 4

2

「セッション」の一般的な概念は、実際には、HTTP クライアントとサーバー間の対話のための単なるデータ ストレージです。セッション管理は、すべての HTTP サーブレットによって自動的に処理されます。どのフレームワーク?

実行間で情報を記憶するためにコンソール アプリの情報を保存するだけの場合は、Xml を使用してファイルからデータを保存/読み込みすることを検討してください。

于 2010-09-20T03:30:27.913 に答える
1

HttpRequestはい、サーブレットからクラスに渡すだけです。

サーブレットで次のようにします。

cmd.execute(request);

あなたのクラスでは、このようなことをしてください、

public class Command implements ICommand {
   .
   .
   public void execute(HttpServletRequest request){
      HttpSession sess = request.getSession(false);
   }
   .
   .
   .
}
于 2010-09-20T03:30:05.973 に答える
1

すべての見苦しいサーブレット API の詳細を抽象化するコンポーネント ベースの MVC フレームワークを使用して、javax.servletインポートがゼロになるようにします。そのような例は、JSF2 と Struts2 です。

たとえば、JSF2 では、Userクラスをセッション スコープのマネージド Bean として宣言するだけです。

@ManagedBean
@SessionScoped
public class User {
    // ...
}

次に、フォーム送信の処理に使用している「アクション」Bean で、それを管理プロパティとして参照します。

@ManagedBean
@RequestScoped
public class SomeFormBean {

    @ManagedProperty(value="#{user}")
    private User user;

    public void submit() {
        SomeData someData = user.getSomeData();
        // ...
    }
}

それでおしまい。

生のサーブレット API に固執したい場合は、生のHttpServletRequest/HttpServletResponseオブジェクトを渡す必要があるという事実を受け入れる必要があります。あなたができる最善のことは、その周りにいくつかの抽象化を自作することです(しかし、JSF2 / Struts2がすでに行っていることのようになります。趣味/自己学習の目的でない限り、なぜ自作するのでしょうか:))。

于 2010-09-20T11:36:58.640 に答える