JSP总结四(EL表达式)
来源:互联网 发布:raptor编程1到100之和 编辑:程序博客网 时间:2024/06/18 17:14
JSP总结四(EL表达式)
简介
JSP页面尽量不要使用
scriptlet
编写java
代码,因此我们可以使用EL
表达式可以替代Java
语句的使用
隐含对象
与属性相关的隐含对象
属性的隐含对象有
PageScope
,requestScop
e,sessionScope
,applicationScope
分别对应的是JSP
中的PageContext
,request
,session
,application
,因此可以取得JSP
对象使用setAttribute()
设置的属性,如果没有使用EL隐含对象获取属性的值,那么默认是从PageScope
开始寻找
<% request.setAttribute("login",'true'); //绑定request对象的属性 session.setAttribute("login",'true'); //绑定session对象的属性 application.setAttribute("login","true"); //设置application对象的属性 %> <%--获取request绑定的属性值 相当于request.getAttribute("login");--%> <h1>${requestScope.login}<h1> <%--获取session绑定的属性值--%> <h1>${sessionScope.login}<h1>
与请求参数相关的隐含对象(param,paramValues)
与请求参数相关的EL隐含对象有
param
,paramValues
。我们可以使用EL表达式可以获取表单提交的请求参数。下面我们使用表单提交,测试一下
JSP代码(表单提交)
<form action="demo1.jsp" method="get"> 姓名:<input type="text" name="username"> 密码:<input type="password" name="password"> <input type="submit" value="提交"> 爱好: 打棒球:<input type="checkbox" name="hobbies"> 打羽毛球:<input type="checkbox" name="hobbies"> </form>
demo1.jsp 文件(接收请求参数)
<%--获取提交的请求参数username,password 相当于使用如下代码: request.getParameter("username"); request.getParameter("password"); --%> <h1>${param.username}</h1> <h1>${param.password}</h1> <%--获取多选框的值 相当于使用下面的代码: request.getParameterValues("hobbies")[0] --%> <h1>${paramValues.hobbies[0]}</h1> <h1>${paramValues.hobbies[1]}</h1>
与标头(Header)相关的隐含对象
如果想要取得用户请求的表头数据,那么使用
header
或者headerValues
隐含对象。例如使用${header["User-Agent"]}
这个相当于使用<%=request.getHeader("User-Agent")%>
。HeaderValues
对象相当于使用request.getHeaders()
cookie隐含对象
cookie
的隐含对象可以取得用户设置的Cookie
设置的值。如果在Cookie
中设置了username
属性,那么可以使用${cookie.username}
初始参数隐含对象
隐含对象
initParam
可以用来取得web.xml
中设置的ServletContext
初始参数,也就是在<context-param>
中设置的初始参数。例如${initParam.initcount}
的作用,相当于<%=ServletContext.getInitParameter("initCount")%>
EL运算符
使用EL运算符直接实现一些算术运算符,逻辑运算符,就如同一般常见的程序语言中的运算
算术运算符
可以直接使用加减乘除
${1+2}
,${5/2}
,${5*3}
逻辑运算符
${true and false}=false
,${true and true}=true
,${true or false}=true
关系运算符
可以直接在EL表达式比较大小,返回的也是
false
和true
,可以用来判断,如下:
${1<2}=false
,${(10*10)>200}=true
<c:if text="${6>5}"> <c:out value="可以直接使用EL表达式进行比较"></c:out> </c:if>
- JSP总结四(EL表达式)
- JSP 笔记(四 : EL 表达式 )
- Jsp学习总结-----EL表达式
- JSP EL表达式运算符总结
- jsp技术(四)—— EL表达式
- jsp+servlet四、El表达式以及C标签
- JSTL标签(2)、EL表达式总结、Jsp标签总结
- JSP表达式语言(EL)
- el jsp表达式
- jsp不支持EL表达式
- el jsp表达式
- jsp中的el表达式
- JSP EL 表达式
- el jsp表达式
- [JSP] EL表达式
- Jsp 和 EL 表达式
- jsp El表达式
- jsp el表达式学习
- 2017安卓最全框架
- Utgard_OpcClient使用简要指南
- 第4周项目5- 猴子选大王
- uvalive 3276 The Great Wall Game 把一个图中的棋子 移动到同一直线 或者斜线上的最小步数
- 【复杂度分析】HDU5762[Teacher Bo]题解
- JSP总结四(EL表达式)
- 我要读书我要读书我要读书
- java开发的23种设计模式(二)
- 多进程和数据传递
- 第十章g2o_bal_class中顶点增量函数中的Eigen::VectorXd::ConstMapType v ( update, VertexCameraBAL::Dimension );
- Mybatis学习笔记七 动态查询语句
- MAVROS+MAVLINKan安装小记
- 使用OpenGL ES和GLKit绘图
- 博弈论 入门总结