JSP中el表达式的取值过程是怎样的

JSP中el表达式的取值过程是怎样的,第1张

el表达式和Springmvc没关系,el表达式取值必需是servlet四大作用(servletContext>session>request>pageContext)中有的值,这四个域都有setAttribute("",object)方法和getAttribute("")方法 el表达式 会自动从四大域中按作用范围从小到达寻找搜寻对应名字的值,其内部调用的就是pageContext的findAttribute("")方法;如果要想在页面通过el表达式得到值就必需先调用域的setAttribute方法把值设置进去,不需要什么配置,直接写el表达式就可以如下代码

<% 

applicationsetAttribute("name", "zhangsan");//Context域

sessionsetAttribute("name", "lisi");//session域

requestsetAttribute("name", "wangwu"); //request域

pageContextsetAttribute("name", "zhaoliu");//page域

%>

${name }

输出结果是page域中的zhaoliu 如果将page域删掉则输出wangwu 依次类推

哥们 这是javaee基础知识 建议学好基础在整框架 不然只会傻瓜式的复制粘贴 不知道内部工作原理

你可以把对象放在Session中,也可以放到Request中,假如放到其中的属性名为OBJ,然后在页面上可以直接使用${OBJ}获取该对象,如果是List就遍历,是JavaBean就直接${OBJpropertyName}取值。

使用${OBJ}会默认取数据,从小到大先检查Request中,如果其中没有这个属性就找Session,还没有就找Application。但是一般不建议放到Session中,放到Request中比较好。

EL表达式是用来获取参数值的,不能用来调用函数。

比如表单中的参数,通过表单中控件的name属性就可获取到控件对象的值。

${sessionScopeadmin}是获取Session对象中admin参数的值。

1在servlet中获取到session,使用sessionsetAttribute("userInfo",userInfo);

2在每个页面可以使用<%%>取到sessiongetAttribute("userInfo")或者使用EL表达式${sessionScopeuserInfo};都可以取到你存放的值。

注:userInfo比如是当前用户登录的信息的javabean对象。

用struts标签: <s:property value="#sessionhello" />

用EL表达式:${sessionhello}

用java代码:<%=sessiongetAttribute("hello")%>

java获取session的值每次登陆的时候使用。

>

以上就是关于JSP中el表达式的取值过程是怎样的全部的内容,包括:JSP中el表达式的取值过程是怎样的、List里面放了一个对象,再将List放入session中,在JSP页面上用EL表达式中如何取得该对象的属性值啊、请问在EL表达式中怎么获取对象中的属性等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10128370.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存