JSP

时间:2019-06-16 19:56:36

标签: jsp session servlets java-ee scriptlet

1)JSP页面内的这些scriptlet有什么区别?

<% request.getSession().setAttribute("myAttrName", "session_MyText"); %>

<!-- besides that getSessionContext() is deprecated! -->
<!-- Already missing in Tomcat9 servlet-api.jar --> 
<% request.getSession().getSessionContext().setAttribute("myAttrName", "session_MyText"); %>

<% request.getSession().getServletContext().setAttribute("myAttrName", "session_MyText"); %>

2)我应该选择哪一个-第一个(request.getSession().setAttribute())?

2.1)为什么?第三个是错误的吗?

3)为什么不推荐使用第二个(对此尚不明确{API)?

P.S。我知道不推荐使用scriptlet,而推荐使用JSTL /自定义标签+ EL(和非JSP方法),但是为了清楚起见,要求这样做。

参考: request.setAttribute() vs request.getSession().setAttribute()here-第一个是requestScope,第二个是sessionScope (根据EL:${requestScope.attrName}${sessionScope.attrName}

0 个答案:

没有答案