2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

Java EE 6 最终草案暗示了平台的未来发展方向

  • 2009-10-19
  • 本文字数:1333 字

    阅读完需:约 4 分钟

JSR-316(Java EE 6)专家组最近发布了规范的最终草案。相对于早期草案来说,最终草案有3 个重要变化,分别是增加了 JSR-330 (针对 Java 的依赖注入)、 JSR-299 (针对 Java EE 平台的上下文与依赖注入,以后称之为“CDI”)以及 JSR-303 (Bean Validation),这三个规范都将成为完整平台与 Web 的必要组件。为了搭配 CDI 与 JSR-330,专家组又提出了另一个最终草案,该草案重用了 JSR-330 中定义的依赖注入注解,同时增加了针对 EJB Session Bean 的构造注入和其他微小变化。

除了此前发布的 Web Profile 和完整的规范文档外,专家组还为 Managed Bean 增加了一个规范文档。所谓 Managed Bean,其实就是被容器当作受管理组件的一些 Java 类,它在 CDI 和 JavaServer Faces 中得到了广泛的应用。此外规范还引入了 EJB Lite,这样我们就可以在完整的 Java EE 容器外使用 EJB Session Bean 了,这意味着三种概念能独立存在于 Java EE 平台之上。类似的概念早就存在于那些广泛应用的框架中了,如 Spring 和 Seam 等。Managed Bean 支持一些基本服务,如资源注入、生命周期回调以及拦截器等等。其他规范可以构建在该定义之上并添加其他服务,比如 CDI 增加了依赖注入、EJB Session Bean 增加了事物、远程等等。Roberto Chinnic 在其博客上给出了如下示例:

给定一个 JAX-RS 资源类,你可以通过添加一个 @ManagedBean 注解、一个 EJB 组件注解(@Stateful)或是一个 CDI 注解(比如 @Default)将其转换为 Managed Bean。反之亦然,若给定的类来自于 Managed Bean 或是 EJB 组件,那么我们可以通过添加一个 JAX-RS @Path 注解将其转换为 JAX-RS 资源类。以此类推,Servlet、JAX-WS 端点类或是(大多数)Java EE 6 中的任何其他组件类型都可以这样。

虽然目前 Managed Bean 规范的影响还不算大,但它却非常重要,因为这暗示了 Sun 对于整个 Java EE 平台走行方向的想法。尽管还需要对规范加以修改以让整个 Java EE 平台符合其要求,但不难看出 Managed Bean 和 Java EE 5 平台所引入的基于注解的编程模型最终可以让开发者从 Java EE 容器所提供的众多服务和组件中按需选择。同时,简单的 Managed Bean 模型补充了平台下的扩展点和服务供应者接口,为 Java 框架和产品开发者提供了一种标准化机制以在平台上进行分层,这也是 Java EE 6 平台的一个主要目标。

Sun GlassFish V3 很可能成为首个提供完整平台支持的应用服务器,现在其预览版已经发布了。JBoss 5.2 的下一beta 版将提供某些Java EE 6 支持,包括JavaServer Faces(JSF)2.0、Java Persistence(JPA)API 2.0、Bean Validation 以及新版本的CDI。SpringSource 也宣布支持部分新标准。Spring 3.0 将支持JSF 2.0、JPA 2、Bean Validation 以及JSR-330。未来的Spring 3.x 将支持Java EE 6 其他的API,包括Servlet 3。

就IDE 支持来说, NetBeans 6.8 将支持JSF 2.0(包括Facelets)、JPA 2.0 以及针对GlassFish V3 的增量部署。现在 NetBeans 6.8 M2 已经可以下载了。JetBrains 也紧紧跟随着Java EE 6 的变化, IntelliJ IDEA 9 将支持 JPA 2.0、EJB 3.1、JSF 2.0、Servlet 3、CDI、Bean Validation 以及 GlassFish 3。

查看英文原文: Java EE 6 Proposed Final Draft Hints at Future Direction of the Platform

2009-10-19 13:042915
用户头像

发布了 88 篇内容, 共 272.8 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

视频门禁的优点及应用场景

anyRTC开发者

音视频 WebRTC RTC sdk

阿里P7简历上都有哪些可以拿得出手的项目?

Java架构师迁哥

阿里人是如何设计系统抵挡亿级流量冲击的?(全彩版小册开源)

Java架构师迁哥

☕️【Java 技术之旅】带你看透Lambda表达式的底层

码界西柚

Java Lambda 底层原理 5月日更 行为参数化

可视化突破海绵城市发展困境,智慧城市从“一张图”开始

一只数据鲸鱼

数据可视化 智慧城市 智慧水务 三维可视化 海绵城市

CCF C³-04@百度丨“AI+开源”的昨天今天和明天

百度大脑

百度 AI

Alibaba面试官:“这该死的程序员,技术竟如此深厚!”

Java架构之路

Java 程序员 架构 面试 编程语言

网络攻防学习笔记 Day27

穿过生命散发芬芳

5月日更 网络攻防

【多线程与高并发】从一则招聘信息进入多线程的世界

牧小农

Java 多线程与高并发

终于看到阿里大牛能把springboot讲的如此出神入化

Java 程序员 架构 计算机

Flink的批数据SQL

五分钟学大数据

flink 5月日更

Logo设计软件 Tech Support

凌天一击

大厂面试内幕:阿里内部整理出的5000页Java面试复盘指南,起飞

Java架构追梦

Java 架构 面试

助力秋招第三弹:Java集合框架体系详细梳理

北游学Java

Java 面试 框架 秋招

【大咖直播】Elastic 可观测性实战工作坊

腾讯云大数据

elastic

爱了! Alibaba技术官甩出的“阿里内部Java成长笔记”,技术人成长的标杆!

Java架构之路

Java 程序员 架构 面试 编程语言

请警惕 ES 的三大坑

悟空聊架构

elasticsearch 架构 分布式 微服务 ES

学到了,用138个案例讲明白了Spring全家桶+Docker+MQ

Java架构师迁哥

一周信创舆情观察(5.17~5.23)

统小信uos

一个月吃透这份阿里高级专家的《Java500道面试手册》成功拿下了腾讯offer!

Java架构之路

Java 程序员 架构 面试 编程语言

NUCLEO-L432KC实现UART1、UART2双串口数据通信(STM32L432KC)

不脱发的程序猿

嵌入式 stm32 单片机 NUCLEO-L432KC 串口通信

突击 22 天面进腾讯,给到 32K*14 薪!全靠这份阿里面试参考指南了

Java 程序员 架构 面试 计算机

吐血总结 | Java并发编程 72 变

Java架构师迁哥

扫盲篇-什么是分布式任务调度

敏捷调度TASKCTL

大数据 分布式 分布式锁 分布式任务调度 zookeeper分布式锁

ThingJS粒子特效一键实现雨雪效果

ThingJS数字孪生引擎

可视化 场景应用 3D可视化 数字孪生

GitHub上标星75k+超牛的《Java面试突击版》,分享PDF离线版

Java 程序员 架构 面试

国家工业信息安全发展研究中心与华为联合发布《数据安全白皮书》

DT极客

电子产品PCB电路板散热的方法

不脱发的程序猿

嵌入式 PCB 电路板散热 电子电路 电路板

Flume自定义拦截器

大数据技术指南

大数据 5月日更

阿里开源:历年亿级活动高并发系统设计场景总结

Java架构师迁哥

DWF低代码开发技术及其在数字化运营和运维平台建设中的应用

云智慧AIOps社区

低代码 智能运维

Java EE 6最终草案暗示了平台的未来发展方向_Java_Charles Humble_InfoQ精选文章