JSP 中EL表达式用法详解

2019-08-28 18:55| 发布者: |

 

不过有一点要注意的是如果你要用el输出一个常量的话,字符串要加双引号,不然的话el会默认把你认为的常量当做一个变量来处理,

这时如果这个变量在4个声明范围不存在的话会输出空,如果存在则输出该变量的值。

 

属性与范围

与范围有关的el 隐含对象包含以下四个:pagescope、requestscope、sessionscope 和

applicationscope,它们基本上就和jsp的pagecontext、request、session和application一样,所以笔者在这里只稍略说明。

不过必须注意的是,这四个隐含对象只能用来取得范围属性值,即jsp中的getattribute,却不能取得其他相关信息,

例如:jsp中的request对象除可以存取属性之外,还可以取得用户的请求参数或表头信息等等。

但是在el中,它就只能单纯用来取得对应范围的属性值,

例如:我们要在session 中储存一个属性,它的名称为username,在jsp 中使用session.getattribute来取得username 的值,

 但是在el中,则是使用${sessionscope.username}来取得其值的。

 

cookie

所谓的cookie是一个小小的文本文件,它是以key、value的方式将session tracking的内容记录在这个文本文件内,这个文本文件通常存在于浏览器的暂存区内。

jstl并没有提供设定cookie的动作,因为这个动作通常都是后端开发者必须去做的事情,而不是交给前端的开发者。

假若我们在cookie 中设定一个名称为usercountry的值,那么可以使用${cookie.usercountry}来取得它。

 

header 和headervalues

header 储存用户浏览器和服务端用来沟通的数据,当用户要求服务端的网页时,会送出一个记载要求信息的标头文件,例如:用户浏览器的版本、用户计算机所设定的区域等其他相关数据。假若要取得用户浏览器的版本,即${header["user-agent"]}。另外在鲜少机会下,有可能同一标头名称拥有不同的值,此时必须改为使用headervalues 来取得这些值。

 

注意:因为user-agent 中包含 - 这个特殊字符,所以必须使用 [] ,而不能写成

$。

 



init九卅娱乐网站param

就像其他属性一样,我们可以自行设定web 站台的环境参数,当我们想取得这些参数initparam就像其他属性一样,

我们可以自行设定web 站台的环境参数,当我们想取得这些参数

?xml version="1.0"encoding="iso-8859-1"?

web-appxmlns="http://java.sun.com/xml/ns/j2ee"

xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"

xsi:schemalocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"

version="2.4" :

context-param

param-name userid /param-name

param-value mike /param-value

/context-param :

/web-app

那么我们就可以直接使用${initparam.userid}来取得名称为userid,其值为mike 的参数。

下面是之前的做法:string userid =application.getinitparameter;

param和paramvalues
在取得用户参数时通常使用一下方法:


request.getparameter
request.getparametervalues


 

在 el中则可以使用param和paramvalues两者来取得数据。
${param.name}
${paramvalues.name}



这里param 的功能和request.getparameter相同,而paramvalues和
request.getparametervalues相同。如果用户填了一个表格,表格名称为username,则我们就可以使用${param.username}来取得用户填入的值。


 

看到这里,大家应该很明确el表达式只能通过内置对象取值,也就是只读操作,如果想进行写操作的话就让后台代码去完成,毕竟el表达式仅仅是视图上的输出标签罢了。

pagecontext



我们可以使用 ${pagecontext}来取得其他有关用户要求或页面的详细信息。下表列出了几个比较常用的部分

<
>
关于我们
AB模版网成立于2014年,我们是一家专注用户体验设计开发与互联网品牌建设的设计公司,创立至今为2000多位客户提供了创新与专业的设计方案。设计服务范围包括:交互原型设计、产品视觉设计、网站设计与开发建设、移动及软件产品界面设计、图标设计、品牌及平面设计等。

联系我们

13588889999服务时间:9:00-18:00)

admin@adminbuy.cn

官方微信官方微信

部门热线

前   台:13588889999
业务部:13588889999
客服部:13588889999
技术部:13566667777
人事部:13566667777

咨询电话13588889999 返回顶部
返回顶部