3

Are there any differences between getting session through HttpServletRequest.getSession() and HttpSession injected in controller's method?

1
  • i believe both are same :) Commented Sep 16, 2014 at 16:42

1 Answer 1

7

Basically there is no diffrerence between the session object injected into a Spring MVC controller:

@RequestMapping(value = "/somepath", method = RequestMethod.POST)
@ResponseBody
public JsonResponse someMethod (HttpSession session)
{
 // play with session attributes
}

And the session object retrieved from the HttpServletRequest:

@RequestMapping(value = "/somepath", method = RequestMethod.POST)
@ResponseBody
public JsonResponse someMethod (HttpServletRequest request)
{
  Session session = request.getSession();
  // You are playin with the same session attributes.
}

The former style just provide you with a facility to get the contextual HttpSession object by injecting it as a controller argument so that Spring takes care of the all the dirty stuff for you.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.