国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > php教程 > EL表达式

EL表达式

来源:程序员人生   发布时间:2015-06-06 08:31:03 阅读次数:3888次

        最近做DRP项目的时候,学习到了1个新的知识。EL表达式,这个东西特别的简单,那我为何还要写1篇博客呢,1来推荐给更多的人使用,2来EL表达式给我带来了巨大的好处。

        大家先来看看在我没用el表达式之前,我们要先将数据放入request中 。

<span style="font-size:18px;">//我们在servlet中将数据写入到Request中, 然后转到我们的测试页面!</span>
<span style="font-size:18px;">public class JstlElServlet extends HttpServlet { protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.setAttribute("hello", "hello world"); req.setAttribute("User", User) req.getRequestDispatcher("/jstl_el.jsp").forward(req, resp); } } </span>


        在jsp的页面上时怎样取数据的!

<span style="font-size:18px;"><body> hello(jsp脚本)采取传统的方式:<%=request.getAttribute("hello") %><br> 自定义用户类User : <% User user=(User) request.getAttribute("hello"); %> </body></span>     

       

        每次取数据都是要写<%%> ,然后通过request的方法进行获得!,如果是自定义类型的类型,还要引入自定义类所在包,然后在定义1个该类的实例,在将从request中取到的数据进行强迫转换!我去,好麻烦!

    但是在看1下我们如果有了EL表达式话,我们是怎样弄的!

<span style="font-size:18px;"><body> hello(el表达式,语法:$和{}):${hello }<br> User(用户自定义类) :${user } </body></span>

        原来要写很多代码的东西,现在只要1句话就能够了可以了! 就不是真的很简单!

        下边我们来看1下EL表达式究竟是该怎样用的!     

        1、语法结构
             ${expression}
        2、[ ]与.运算符
             EL 提供“.“和“[ ]“两种运算符来存取数据。
             当要存取的属性名称中包括1些特殊字符,如.或?等并不是字母或数字的符号,就1定要使用“[ ]“。例如:
             ${user.My-Name}应当改成${user["My-Name"] }
             如果要动态取值时,就能够用“[ ]“来做,而“.“没法做到动态取值。例如:
             ${sessionScope.user[data]}中data 是1个变量
        3、变量
             EL存取变量数据的方法很简单,例如:${username}。它的意思是取出某1范围中名称为username的变量。 由于我们并没有指定哪个范围的username,所以它会依序从Page、Request、Session、Application范围查找。 假设途中找到username,就直接回传,不再继续找下去,但是假设全部的范围都没有找到时,就回传null。
             属性范围在EL中的名称
                    Page          PageScope
                    Request          RequestScope
                    Session          SessionScope
                    Application      ApplicationScope

         大家是否是发现EL表达式真的很好用,也很简单!赶快实践1把吧!

 


 


 

生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生