Topic: Java EE 7推出Expression Language 3 |
Print this page |
1.Java EE 7推出Expression Language 3 | Copy to clipboard |
Posted by: 阿熊 Posted on: 2013-08-05 15:13 Java EE 7对Java表达式语言API进行了大幅度的调整,该API即Expression Language 3。根据JSR-341,EL API的增强包括对lambda表达式的支持、静态字段和方法访问、集合处理和独立处理器模式等。 在Java EE 7之前,Java表达式语言是JavaServer Faces和JavaServer Pages API的紧耦合组件。JSR-341将Java表达式语言当作独立实体,从Java EE的视图层API中解耦出来,但仍然保持其互操作性。 现在,EL API给了开发人员调用特定Java EL的能力。创建一个新引入的ELProcessor类实例,并用一个表示可计算脚本的字符串作为参数,调用它的eval方法,返回结果可以在Java应用的作用域内用作一个变量。
除了上述独立模式,JSR-341还给予Java EE开发人员编写lambda表达式的能力。Lambda表达式已被列入明年的Java 8标准版,但当前EL开发人员只能在他们的脚本中使用lambda语法。在去年的JavaOne大会上,JSR-341规范的领导者Kin-man Chung就曾指出,为了确保API的通用性和将来Java EL与Java 8的互操作性,制定规范的专家组咨询了大量Java 8项目的Lambda开发人员。
为了处理集合,新的Java EL流API包括forEach、reduce、filter和map等操作符。Java EL集合处理中引入的许多特性和概念也计划整合到Java中,并作为Java 8的一部分。但是,从现在开始,延迟和预加载流以及lambda表达式作为JSR-341功能增强一部分,开发人员就能从中获益。
此外,JSR-341还实现了一个期待已久的对Java EL的增强,它使开发人员可以直接访问静态字段和方法。默认情况下,java.lang.*类会被预加载到所有的脚本中,但是,使用ELProcessor实例的ELManager之后,EL脚本开发人员可以直接使用这些加载到EL上下文的类的静态内容。
JSR-341对Java表达式语言的增强,将和新引入的独立处理器模式一起,成为JSP和JSF实现的强大助手。 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |