A. Jsp的内置表达式,从jsp2.0开始
a. 作用:用来替代<%=…%>
i. 获取域中的数据
1) 获取简单数据
a) ${sessionScope.skey}
b) ${requestScope.skey}
c) ${applicationScope.skey}
d) 快捷获取:${skey} 底层也是fineAttribute();
2) 获取复杂数据
a) 获取数组中的数据
i) 老方式:((array[])request.getAttribute("arr"))[1]
ii) ${arr[1]}
b) 获取list集合中的数据
i) 老方式:((list)request.getAttribute("list").get[1]
ii) ${list[1]}
c) 获取map集合中的数据
i) ${map.age}
d) 格式:${域中的名称[index]}
3) 获取特殊名字的数据(名称含有.+等,需要使用Scpoe获取)
a) ${requestScope["arr.age"]}
ii. 执行运算
1) 四则运算 关系运算(>….) 逻辑(&& ||)
2) 注意+:只能进行加法运算,字符串形式的数字可以进行加法运算,不能拼接字符串
3) empty:判断一个容器的长度是否为0(array set list map),还可以判断一个对象是否为空
4) 三元运算符:$(3>4?"yes":"no"}
iii. 获取常见的web对象
iv. 调用java的方法
b. 格式:&{el表达式}:${sessionScope.skey}
---------------------------------------------------------------------------------------------------------
c. JavaBean导航
i. Java语言编写的一个可重用的组件
1) 狭义上来说就是我们普通编写的类 例如:User Rerson
ii. jvaBean规范
1) 必须是一个公共的具体的类 Public class
2) 提供私有的字段 private String id;(字段)
3) 提供公共访问字段的方法 get|set|is方法(属性)
a) 一旦有公共的方法之后,get|set|is之后的内容,将首字符小写,将这个东西称为bean属性
b) ${域中javaBean名称.bean属性}
4) 提供一个无参的构造器
5) 一般实现序列化接口 serializable
d. El的内置对象(了解)
i. 11个
1) pageScope
2) requestScope
3) sessionScope
4) ApplicationScope
5) Param
6) paramValues
7) Header
8) headerValues
9) initParam
10) Cookie
a) ${cookie}获取map{key=Cookie}
b) 例如:Cookie c=new Cookie("username","tom");
c) 获取:${cookie.username.value}------javabean导航
d) 注意:java中Cookie中的API
i) getName():获取cookie的名称
ii) getValue():获取vookie的value值
iii) 我们称name和value是cookie的bean属性
e) 使用cookie内置对象
i) ${cookie.给cookie起的名字.value}
11) pageContext
a) 获取的不是集合,相当于jsp的pageContext内置对象
b) 在jsp页面中获取项目名
i) ${pageContext.request.ontextPath}
ii. 注意:除了pagecontext其余获取的全是map集合
JavaWeb之El表达式
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.