我正在为网络应用程序创建一些页面,目前我有一些页面,其中包含公司的简要描述和允许他们登录以访问更多信息的链接。当用户登录时,他们应该被重定向到更详细的页面版本。
为了做到这一点,当用户单击登录链接时,我将公司名称(因为它在 url 中使用)保存到 session 中,并在用户登录时访问它以找出要在哪里登录将它们重定向到。
这工作正常,但唯一的问题是这些页面使用简单的文件名 Controller ,我不想为它们实现 Controller ,以便我可以设置此属性。我通过在 jsp 中使用 scriptlet 找到了修复方法:
<a href="<c:url value='/login.jsp' />"
onclick="<% session.setAttribute( "partner", "companyName" ); %>"
>
Click here to log in
</a>
现在,在阅读了 SO 和其他资源之后,我知道强烈建议不要使用这些 scriptlet,但是我不知道如何解决这个问题,而无需实现 Controller 来处理这个简单的问题。任何建议将不胜感激。
最佳答案
使用jSTL
<c:set var="partner" value="companyName" scope="session" />
关于java - 设置 session 变量的 scriptlet 的替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19361140/