EL表达式在Javaweb服务器端页面的应用[EL基础篇一]

EL表达式的基础篇【第一次写博客,请多多指教批评,如有指教批评,请留言微笑,后续还会继续更新】

EL表达式的简介:EL的英文全称是Expression Language,是一种简单JSP表达式语言,提供了简化表达式的操作方法,基于可用的命名空间(pageContext/request/session/application)、嵌套属性和对集合、操作符(算术型/关系型/逻辑型)的访问符、映射到Java类中静态方法的可扩展函数以及一组隐式对象

(【基础篇一】我的理解:EL表达式就是将表达式中的值在JSP页面输出,实现Java代码【业务逻辑】与HTML标签【结果显示】的分离,将业务逻辑的结果通过EL表达式获取到并展示到JSP界面上)

EL表达式的语法结构:${expression},用$定界,内容包括在{}中。

"[]"与"."运算符的介绍:一般情况下使用.运算符即可,当属性名称中包含一些特殊字符,比如".","?"等非字母或数字的符号时就一定要使用"[]"来取值。

EL表达式的作用:EL表达式提供了在JSP脚本编制元素范围外使用运行时表达式的功能,(脚本编制元素是指嵌套在JSP页面的Java代码)。

EL表达式适用的情形:

1.对字符串常量的输出-${"您好"}

2.对变量的输出:${str}

3.对计算结果的输出:${3+2},同样也支持对逻辑运算结果的输出

4.对对象属性的输出:${user.userName}

5.对集合某一项的输出:${list[1]}

6.对键值对的输出:${map["key"]}

EL隐式对象:
  1. 与范围有关的隐式对象:pageScope、requestScope、sessionScope、applicationScope

           这四个隐式对象用来取作用域范围中的属性值,即pageContext,request,session,application中储存的值,即

            用setAttribute()方法存储的值。

        例如:request.setAttribute("userName",userName);        

                      其中变量userName中的值,在JSP页面便可以使用${requestScope.userName}来取到值,直接在JSP页面输出。

                       如果不指定取值的范围(${userName}),它会依序从page,request、session、application范围中查找,找到

                        便返回userName的值,找不到便返回null。

     2. 与输入有关的隐式对象:param,paramValues

            这两个隐式对象用来获取请求参数的值:

                    2-1.通过name属性获取表单中提交的值。

                            例如:<form action="user.jsp" method="post">

                                                用户名:<input type="text" name="userName">

                                                 <input type="submit" value="提交">

                                        </form>

                                        要在user.jsp页面获取userName的值,便可以使用${param.userName}获取,其中paramValues用

                                         获取name值相同的表单元素的值,比如CheckBox控件的值,返回的一个集合,可以通过索引下标

                                         来获取值${paramValues.habbit[index]}

                    2-2.可用于表单回显【当表单提交后文本框依旧显示所填写的值】

                            例如:<form action="user.jsp" method="post">

                                                用户名:<input type="text" name="userName" values="${param.userName}">

                                                用户名:<input type="text" name="userName"                                    values=" <%request.getParamter("userName")==null?"":request.getParamter("userName")%>">

                                                 <input type="submit" value="提交">

                                       </form>

                               此时使用EL表达式比使用Java脚本加三元运算符简单

                    2-3.获取a标签的?传值。

                            <a href="user.jsp?text=add">添加</a>,在user.jsp页面便可以使用${param.text}取到值:add

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值