`

2.Java EE 6开发三剑客

阅读更多

    JSF 2.0

  尽管 Java 在展示层框架上竞争的非常激烈,但 JSF 仍然固守着自己的领地。虽然有很多关于 JSF 的易用性和健壮性的质疑声,但 JSF2.0 就是为正面解决这些问题而提出来的,它的易用,创新以及可扩展的特性包括: JSF 正式将 Facelets 作为视图技术。也许你不熟悉 Facelets ,它也是一个与 JSF 结合默契的开源视图技术。因此,与 JSP 不同的是 Facelets 更适合 JSF 的组件模型以及生命周期的概念。当然,也许 Facelets 最强大的特性就是在用 mark-up 来代替 java 代码创建自定义的组件。创建自定义组件的复杂度也许是开发者对 JSF 抱怨最多的地方了。 JSF2.0 通过使用标签为 Java EE 5 提供了基于 annotation 驱动 的配置特性(比如说可以使用 @ManagedBean 和 @ManagedProperty )。这也意味着可以一定程度上的减少 faces-config.xml 文件的大小,不过像在 navigation 这些结点的配置在 XML 文件还是不能少。 JSF2.0 为适应 AJAX 而改变了自身的生命周期,只需要局部页面的交由 AJAX 事件处理。这个特性使得 JSF+AJAX 的组合更加自然。 JSF2.0 现在内置了优秀的资源处理器。对 images , JavaScript 文件以及 CSS 样式等都表现出众。它可以对通过逻辑名称,资源分组以及版本等方式来更好的引用资源。 除上述特性外, JSF2.0 还包括许多其它方便的改变。比如说支持事件,支持 RAILS_ENV 的开发风格 ( 就是 ROR) ,支持对标准组件集进行扩展。

  EJB 3.1

  EJB 在 Java EE 5 就已经经历过了非常大的改动。也许看似不可能,但实际上 EJB3.0 还是在社区中广泛得到认可,并且采纳它的人也在不断增长。而这一切也许是因为我们过度的认为需要怎么怎么简化 Java EE 5 才取得这样的成绩。比如说,对 JBoss Seam 的兴趣和 GlassFish 的热情都是重要的关键因素。 EJB3.1 的目标就是在增加业务组件时,继续让 EJB 变得尽可能简单。下面是对 EJB3.1 特性的高度概括: 原本需要甚至实现 Session Beans 的业务接口变得可选了,不再强迫要求实现。 在使用 Session Beans+JSF+WebBeans 的场景下尤其有用。 EJB3.1 增加了 Singleton Beans 的概念。因为人们更倾向于管理共享的应用程序状态,需要保证是完全线程安全 的模型。此外, EJB3.1 新增的声明式的并发控制也更加灵活。 EJB3.1 一个可圈可点的的强大特性就是支持 cron 风格的 scheduling .除目前基于 timer API 的调度计时器外,声明式和编程式的 cron 风格的 scheduling API 也加入了进来。 另一个强大的特性就是可以通过使用 @Asynchronous 标注来对 Session Bean 的方法进行异步调用。你甚至还通过它来控制异步 EJB 方法从而返回一个 java.util.concurrent.Future 对象。 EJB3.1 Lite 概念的逐渐引入形成了一个 EJB API 的子集,并在 Web Profile 中得到应用。只不过 EJB Lite 包含了像事务处理和安全这样的特性,而那些消息机制,远程调用以及 scheduling 等非必须的自然没有必要加入其中。除上述列表所述特性外, EJB3.1 的特性还包括:括直接将 EJB 打包成 war 文件,可运行在 embedded 的容器中便于 Java SE 环境进行 JUnit 测试,使用统一的标准化全局 JNDI 命名方式。

  JPA 2.0

  到 Java EE 6 的时候, JPA 已经彻底从 EJB 中分离,形成自己的体系 (EJB3.0 已经将 JPA 分离出去了 ) . JPA 的成功是毫无疑问的。它广泛得到社区的采纳和一流供应商的支持。本来我们担心 EJB2.* 的 Enity Beans 垮台可能无法让 Java EE 再次引领持久层的标准,一个重要成功的因素就是 Gaving King 和 JBoss 社区毫不含糊的支持。 JPA2.0 的目标就是要在这次成功的基础上再接再厉,填补更多的空白,再创多的创新: JPA2.0 加入了大量必须的 ORM 映射增强特性,包括:支持通过使用 @ElementCollection 标注来增强 collections, maps 和 lists( 这里不是指实体之间的关联关系 ) 集合,支持 map 的单向 one-to-many 关联 (JPA1.0 只允许双向 one-to-many 关联 ) . EntityManager 和 Query API 都得到改进。比如说,现在可以从结果集中直接取得第一条记录 (JPA1.0 只允许从一个 unique 结果集中反回单个记录 ) ,指定 query 结果集的最大值,访问各个供应商的底层实体对象 manager 或 query ,最后就是加入悲观锁 (JPA1.0 只支持乐观锁 ) . JPQL 也提供类似于 SQL 的 CASE , NULLIF , COALESCE 等函数 . JPA2.0 应广大开发者要求增加了 Criteria API .要是你对 Hibernate 或 TopLink 的 Criteria API 不熟悉的话,可以将它想像成一个以 Java 为中心的面向对象,线程安全并可以与 JPQL 划上等号的一组 API .这组 API 适合于编写复杂的动态查询语句,还可避免解析 JPQL 语句时,所抛出的运行期异常。 更完整的 JAP2.0 特性还包括:标准的二级缓存,标准的 JDBC properties ,指定超时时间等等。

分享到:
评论

相关推荐

    贯通Java Web开发三剑客Eclipse+Tomcat+Ant整合开发.(党海峰)

    "贯通Java Web开发三剑客Eclipse+Tomcat+Ant整合开发"的教程,将指导读者如何将这三个工具有效地结合在一起,实现高效、流畅的开发流程。具体可能涵盖以下内容: 1. **Eclipse与Tomcat集成**:设置Eclipse以使用...

    Java Web开发实例大全 基础卷(alin书签).pdf

    6. **Web框架**:如Spring MVC、Struts2等,它们简化了Java Web开发,提供了依赖注入、AOP(面向切面编程)等功能。了解并掌握一种或多种框架可以极大地提高开发效率。 7. **Web服务**:包括SOAP(Simple Object ...

    二手房交易java项目系统10

    4. **JSH(JavaScript + HTML + CSS)**:前端开发三剑客,负责构建用户友好的交互界面。JavaScript处理动态效果和用户输入验证,HTML定义页面结构,CSS进行样式布局,共同构建出美观且功能完善的用户界面。 5. **...

    Java系列教程和源码.zip

    进入Java后端开发,Java EE(企业版)提供了服务器端开发的全套解决方案,包括Servlet、JSP、JDBC等技术。Servlet是Java后端处理HTTP请求的核心,JSP则允许将HTML代码和Java代码混合编写,简化视图层的开发。JDBC则...

    java web的相关知识

    2. JSP(JavaServer Pages):JSP是Java Web开发中的视图层技术,用于生成动态内容。JSP文件本质上是HTML文件,其中可以嵌入Java代码。通过JSP标签、脚本元素和表达式,开发者可以方便地将Java代码与HTML结合,实现...

    张龙 javaWeb部分 课堂笔记

    JavaWeb是基于Java技术构建的Web应用程序开发框架,它结合了服务器端编程、客户端脚本以及数据库交互等多个方面,为开发者提供了丰富的工具和库,以构建高效、可扩展的Web应用。张龙老师的课堂笔记涵盖了许多关键...

    Java-Project:这是Java项目的存储库

    它简化了Java EE(企业版)的复杂性,使得开发者可以更专注于业务逻辑而不是底层实现。 【JavaScript】 虽然主要的标签是Java,但提及JavaScript意味着此项目可能也包含前端部分。JavaScript是一种轻量级的解释型...

    SSH API!struts+Hibernate+Spring

    SSH,即Struts、Spring和Hibernate,是Java开发领域中广泛应用的一个经典技术栈,被誉为“企业级应用开发的三剑客”。这个API集合通常用于构建高效、可维护且灵活的Web应用程序。以下是对SSH框架的详细说明: 1. **...

    struts2.16 spring2.56 hibernate3.2 sqljdbc4 完整jar包

    SSH(Struts2、Spring、Hibernate)是Java开发中的一个经典组合,常被称为“三剑客”,它们协同工作,可以构建出高效、灵活且易于维护的企业级Web应用。Struts2负责控制流程,Spring处理依赖注入和事务管理,...

    struts+hibernate+spring学习宝典

    Struts、Hibernate和Spring是Java开发中的三大框架,被誉为"SSH三剑客",它们各自在Web应用开发中承担着核心角色。...通过这样的实战项目,你将能更深入地理解SSH三剑客如何协同工作,提升你的Java EE开发技能。

    ejb&&javascript-pdf

    `EJB`全称为Enterprise JavaBeans,它是Java EE(现在称为Jakarta EE)平台的一部分,主要用于构建企业级的分布式应用。EJB提供了一种组件模型,使得开发者可以创建服务器端的业务逻辑组件,这些组件可以在容器的...

    JavaWebLab

    在Java Web开发中,HTML通常与CSS和JavaScript一起使用,形成前端开发的三剑客。HTML负责页面内容,CSS负责样式设计,JavaScript则负责交互逻辑。 在JavaWebLab-master这个压缩包中,我们可以期待一系列与Java Web...

    spring+struts+hibernate框架

    "Spring+Struts+Hibernate"(SSH)框架是Java Web开发中的经典组合,被誉为"三剑客"。这个框架集合提供了全面的企业级应用解决方案,帮助开发者构建高效、可扩展且易于维护的Web应用程序。 Spring框架是核心,它...

Global site tag (gtag.js) - Google Analytics