【JAVA】EL技术

概述

  EL(Express Lanuage)表达式可以嵌入在jsp页面内部,减少jsp脚本的编写,EL 出现的目的是要替代jsp页面中脚本的编写。

如何从域中取出数据

实例:

<body>
    <!-- 模拟域中的数据 -->
    <%
        pageContext.setAttribute("company", "dynamic");

        //存储字符串
        request.setAttribute("company", "dynamic");

        //存储一个对象
        User user = new User();
        user.setId(1);
        user.setName("a");
        user.setPassword("123");
        session.setAttribute("user", user);

        //存储一个集合
        List<User> list = new ArrayList<User>();
        User user1 = new User();
        user1.setId(2);
        user1.setName("b");
        user1.setPassword("123");
        list.add(user1);
        User user2 = new User();
        user2.setId(3);
        user2.setName("c");
        user2.setPassword("123");
        list.add(user2);
        application.setAttribute("list", list);

    %>
</body> 
方法1:采用脚本
<%=request.getAttribute("company") %>
<%
    User sessionUser = (User)session.getAttribute("user");
    out.write(sessionUser.getName());
%>
方法2:采用EL表达式获得域中的值
${requestScope.company }
${sessionScope.user.name }
${applicationScope.list[1].name}
方法3:采用EL表达式全域查找
${company }
${user.name }
${list[1].name}

备注:由于没有指定在哪一个范围进行查找,因此它会依序从Page、Request、Session、Application范围查找。

总结:

1、jsp脚本:<%=request.getAttribute(name)%>
2、EL表达式替代上面的脚本: requestScope.nameEL r e q u e s t S c o p e . n a m e E L 最 主 要 的 作 用 是 获 得 四 大 域 中 的 数 据 格 式 {EL表达式}
EL获得pageContext域中的值: pageScope.key;ELrequest p a g e S c o p e . k e y ; E L 获 得 r e q u e s t 域 中 的 值 : {requestScope.key};
EL获得session域中的值: sessionScope.key;ELapplication s e s s i o n S c o p e . k e y ; E L 获 得 a p p l i c a t i o n 域 中 的 值 : {applicationScope.key};

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 14
    评论
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值