我有一个网站,每个用户大约有15个会话变量。我最近开始阅读一篇文章,其中说“会话变量是邪恶的,它们会影响应用程序的性能”。阅读那篇文章我感到非常失望,因为我找不到任何其他方式可以访问其他页面上的变量。
考虑以下情况,
我有一个论坛网站,当用户点击某个特定问题时,会调用ForumSingleQuesitonController
来存储问题,答案,问题和答案的评论都在ArrayList<ForumSingleQuestionBean>
的对象中这个对象由我存储在会话中。
现在我使用resonse.sendRedirect("pages/forum_single_question.jsp");
转到forum_single_question.jsp
页面,从中我访问会话变量并打印出它的值。
现在我的问题是如何执行此过程,即在不使用会话变量的情况下将变量从Controller(Servlet)
传递到JSP
。
提前致谢
答案 0 :(得分:2)
我建议从servlet执行forward
。这会将所有请求参数传递给JSP。
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/forum_single_question.jsp");
dispatcher.forward(request,response);
如果您需要包含其他属性,请在转发前使用:
request.setAttribute("attributeName", value);