编程语言
首页 > 编程语言> > java – 如何使用EL表达式在JSP中设置cookie值?

java – 如何使用EL表达式在JSP中设置cookie值?

作者:互联网

我正在尝试在JSP中设置cookie值而不直接使用Java代码.我知道我可以通过为它创建一个自定义标记库来实现它,但我想保持简单,所以我试图像访问cookie一样:使用EL表达式.

我知道我可以使用带有表达式${cookie [‘cookieName’].value}的JSP EL读取cookie的值,但是如何使用EL为该cookie设置特定值?我在JSP中找到了使用java代码的解决方案,但我想避免这种情况.

到目前为止,我找到了使用c:set标记设置变量的方法,但是它不接受表达式作为’var’参数,所以我做不了类似的事情:

<c:set var="${cookie['cookieName'].value}" value="123" />

我认为要走的路是,但我不知道用于var部分的表达式,或者如何编写它以便我可以设置cookie值而不仅仅是变量.

任何帮助表示赞赏!

解决方法:

在JSP中没有设置cookie的标准表达式.如果您希望OR使用JSP无脚本,则可以使用自定义标记

<%

    javax.servlet.http.Cookie cookie 
           = new javax.servlet.http.Cookie("name", "value");

    // cookie.setXXX()

    response.addCookie(cookie);

%>

注意:确保在提交响应之前添加cookie.

标签:java,jsp,cookies,el,taglib
来源: https://codeday.me/bug/20190612/1226753.html