Javascript 在JSP中正确使用scriptlet的唯一方法

Javascript 在JSP中正确使用scriptlet的唯一方法,javascript,jquery,jsp,Javascript,Jquery,Jsp,让我在这篇文章的开头说以下几句话(因此没有人将其标记为副本) --我知道,根据JSP规范,应该不惜一切代价避免JSP页面中的scriptlet。如果需要,它们的目的可以是将处理客户机请求返回的数据转换为适合客户机的格式 所以,我的问题是:以下案例是否属于这一类?它是scriptlet的适当使用吗 在JSP页面的顶部,我使用scriplet捕获服务器端数据: <% User user = User.getUser(request); %> 我知道在JSP中使用Scriptlet被认为

让我在这篇文章的开头说以下几句话(因此没有人将其标记为副本)

--我知道,根据JSP规范,应该不惜一切代价避免JSP页面中的scriptlet。如果需要,它们的目的可以是将处理客户机请求返回的数据转换为适合客户机的格式

所以,我的问题是:以下案例是否属于这一类?它是scriptlet的适当使用吗

在JSP页面的顶部,我使用scriplet捕获服务器端数据:

<% User user = User.getUser(request); %>
我知道在JSP中使用Scriptlet被认为是非常糟糕的形式,但是我如何才能获得用户对象呢


我是否需要强制后端开发人员将该值传递回我,以便我可以通过JSTL引用它?我猜这就是我必须做的

在Java代码中向用户公开JSP,并通过EL检索它


这可以通过支持JSP的servlet、过滤器等来完成,具体取决于您使用的框架。在这种情况下没有理由使用scriptlet。

Java代码需要做的就是将用户实例放在请求属性映射中。然后,您所需要做的就是引用
${user}
。如果用户对象在会话范围内怎么办?在JSP中访问会话的正确方法是什么?我能做这个吗?您可以这样做,也可以直接使用
${sessionScope.user}
<c:set var="userName" value="<%=user.getLoginName()%>" />
params.userName = "${userName}";