-1

サーブレットでセッションを作成する方法を学んでいたとき。サーブレットAPIには、HttpSessionセッションを作成するために呼び出されるクラスが用意されていることを読みました。

HttpSession session = request.getSession(true);

次に、いくつかのサンプルコードを見て、このコードを見ました。

// Get the bean from session.

Customer customer = request.getSession(true).getAttribute("userinfo");

ここで何が起こっているのですか?HttpSessionクラスを使用せずにどのようにセッションを作成しましたか?

4

1 に答える 1

2

この線

Customer customer = request.getSession(true).getAttribute("userinfo");

と同等です

HttpSession tempVariable = request.getSession(true);
Customer customer = tempVariable.getAttribute("userinfo");

ただし、一時変数はありません。それは単なるメソッドチェーンです。メソッドは。を返すため、request.getSession(true)は型が。である式です。したがって、この式でのメソッドを呼び出すことができます。HttpSessiongetSession()HttpSessionHttpSession

requestこれはHttpServletRequestであり、HttpServlet質問のとおりではないことに注意してください。

于 2013-02-01T16:55:40.807 に答える