欢迎来到天天文库
浏览记录
ID:12985564
大小:57.50 KB
页数:15页
时间:2018-07-20
《ognl,jstl,struts2标签》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、OGNL,JSTL,STRUTS2标签中符号#,$,%的用法示例2009-12-0316:51:52标签:休闲struts2职场取Session中的值 ${session.user.userId} ${sessionScope.user
2、.userId} 基本语法一、EL简介 1.语法结构 ${expression} 2.[]与.运算符 EL提供.和[]两种运算符来存取数据。 当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用[]。例如: ${user.My-Name}应当改为${user["My-Name"]} 如果要动态取值时,就可以用[]来做,而.无法做到动态取值。例如: ${sessionScope.user[data]}中data是一个变量 3.变量 EL存取变量数据的方法很简单,例
3、如:${username}。它的意思是取出某一范围中名称为username的变量。 因为我们并没有指定哪一个范围的username,所以它会依序从Page、Request、Session、Application范围查找。 假如途中找到username,就直接回传,不再继续找下去,但是假如全部的范围都没有找到时,就回传null。 属性范围在EL中的名称 Page PageScope Request RequestScope Session SessionScop
4、e Application ApplicationScope 二、EL隐含对象 1.与范围有关的隐含对象 与范围有关的EL隐含对象包含以下四个:pageScope、requestScope、sessionScope和applicationScope; 它们基本上就和JSP的pageContext、request、session和application一样; 在EL中,这四个隐含对象只能用来取得范围属性值,即getAttribute(Stringname),却不能取得其他相关信息。 例如:我们要取得session中储存
5、一个属性username的值,可以利用下列方法: session.getAttribute("username")取得username的值, 在EL中则使用下列方法 ${sessionScope.username} 2.与输入有关的隐含对象 与输入有关的隐含对象有两个:param和paramValues,它们是EL中比较特别的隐含对象。 例如我们要取得用户的请求参数时,可以利用下列方法: request.getParameter(Stringname) request.getParameterValues(Stringname)
6、在EL中则可以使用param和paramValues两者来取得数据。 ${param.name} ${paramValues.name} 3.其他隐含对象 cookie JSTL并没有提供设定cookie的动作, 例:要取得cookie中有一个设定名称为userCountry的值,可以使用${cookie.userCountry}来取得它。 header和headerValues header储存用户浏览器和服务端用来沟通的数据 例:要取得用户浏览器的版本,可以使用${header["User-Agent"]}。 另外在鲜少机会下,有可能
7、同一标头名称拥有不同的值,此时必须改为使用headerValues来取得这些值。 initParam initParam取得设定web站点的环境参数(Context) 例:一般的方法Stringuserid=(String)application.getInitParameter("userid"); 可以使用${initParam.userid}来取得名称为userid pageContext pageContext取得其他有关用户要求或页面的详细信息。 ${pageContext.request.queryString}
8、取得请求的参数字符串 ${pageContext.request.requestURL} 取得请求的UR
此文档下载收益归作者所有