JSP(3)----------EL表达式

EL表达式

1、EL表达式特点:1)可以与JSTL和javascript结合使用;

                             2)会自动类型转换;

                             3)可以访问一般变量,还可以访问javaBean中的属性以及嵌套属性和集合对象

                             4)可以执行算术运算、逻辑运算、关系运算和条件运算等操作。

                             5)可以获取命名空间,可以访问JSP作用域

                             6)可以与java类的静态方法进行映射

2、EL表达式三种禁用方法

    1)使用“\”    如:\${  number }

    2)<@page isELIgnore = "true">

    3)web.xml中配置  

<jsp-config>
	<jsp-property-group>
		<url-pattern>*.jsp</url-pattern>
		<el-ignored>true</el-ignored>
	</jsp-property-group>
</jsp-config>

3、EL表达式访问数据

    通过[ ]或者 . 访问元素

    1)数组元素的获取:如 array[0]

    2)list集合元素获取:list[ index ]

4、EL表达式算术运算、逻辑运算


5、EL表达式隐含对象:

    5.1)pageContext对象:访问jsp内置对象,但不能获取application、config、pageContext、servletContext对象;在获取这些内置对象后,可以获取对应的属性,这些属性与对象getXXX()方法对应,在使用时,去掉方法名的get,并将首字母变为小写;

request中的getServerPort()   
${ pageContext.request.serverPort }

    5.2)pageScope对象:隐含对象用于返回包含page(页面)范围内的属性集合,返回值为java.util.Map对象

    5.3)requestScope对象:隐含对象用于返回包含request请求范围内的属性集合,返回值为java.util.Map对象

request.setAttribute("userName","mr");    
${requestScope.userName}

    5.4)sessionScope对象:隐含对象用于返回包含session(会话)范围内的属性集合,返回值为java.util.Map对象

session.setAttribute("userName","mr");    
${sessionScope.userName}

    5.5)applicationScope对象:隐含对象用于返回包含application范围内的属性集合,返回值为java.util.Map对象

application.setAttribute("userName","mr");    
${applicationScope.userName}
    5.6)param对象:用于获取请求参数的值,应用在参数值只有一种情况,在应用param对象时,返回的结果为字符串;
<input name="name" type="text"/>   
${ param.name }
//如果文本框中输入的是中文
${ param.setCharacterEncoding("utf-8") }

    5.7)paramValues对象:如果一次请求多个值时,paramValues对象获取请求的参数的值,在应用paramaValues对象时,返回结果为数组。

<input name="action" type="checkbox" id="action" value="登山" /> 
<input name="action" type="checkbox" id="action" value="游泳" /> 
<input name="action" type="checkbox" id="action" value="晨跑" /> 
<input name="action" type="checkbox" id="action" value="慢走" /> 
request.setCharacterEncoding("utf-8");
${ paramValues.action[0] }
${ paramValues.action[1] }
${ paramValues.action[2] }
${ paramValues.action[3] }

    5.8)header 和 headerValues对象:用于获取HTTP请求的一个具体的header的值,有时候拥有多个不同情况的值,这是必须使用headerValues对象。

//获取header的connection属性
${ header.connection }

//获得header的user-agent属性
${ header["user-agent"] }

    5.9)initParam对象:用于获取web应用初始化的参数

<context-param>
    <param-name>user</param-name>
    <param-vlaue>sqc</param-value>
</context-param>

//获取
${ initParam.user }

//比如版权
<context-param>
    <param-name>user</param-name>
    <param-value>sqc所有</param-value>
</context-param>

版权归${ initParam.user} 

    5.10)cookie对象:没有设置cookie存值的方法,但是有获取cookie的方法

Cookie cookie = new Cookie("user","sqc");
response.addCookie(cookie);
//获取cookie
${cookie.user.value}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值