【问题标题】:A fresh graduate confused by the Java EE jargon Spring, Struts, JSF, EJB, Jboss, JMS,被 Java EE 术语 Spring、Struts、JSF、EJB、Jboss、JMS、
【发布时间】:2010-10-29 15:17:48
【问题描述】:
众所周知,上大学时,我们很少有机会了解企业界的情况。以我的经验,我一直看到人们学习 Core Java 并且可能学习其他一些语言,当他们毕业时,他们对这个企业术语一无所知。我现在在那条船上。我是一名刚毕业并从事编程工作的毕业生,我经常对新闻和讨论中出现的所有行话感到困惑。我相信所有提到的框架在创建时都有一个目的,旨在填补空白。
我相信你们中的许多人在职业生涯的早期都会经历过这种情况。有没有什么博客文章、书籍、视频或论坛讨论可以帮助您了解所有这些框架如何组合在一起形成一个应用程序。
详细的文章将不胜感激。我试图寻找一个,但我可以零碎地找到它们,但不是一篇全面的文章。
【问题讨论】:
标签:
spring
jsf
jakarta-ee
struts
ejb
【解决方案1】:
你可以一个一个地用谷歌/维基百科搜索它们。
来自维基百科
Java EE
“Java 平台、企业版或 Java EE 是一种广泛使用的 Java 编程语言服务器编程平台。Java 平台(企业版)与 Java 标准版平台 (Java SE) 的不同之处在于它添加了库提供部署容错、分布式、多层 Java 软件的功能,主要基于在应用服务器上运行的模块化组件。”
Spring 框架在某种程度上是 Java EE 的替代品。
Spring
Struts
“Apache Struts 是一个用于开发 Java EE Web 应用程序的开源 Web 应用程序框架。它使用并扩展了 Java Servlet API 以鼓励开发人员采用模型-视图-控制器 (MVC) 架构。它最初由Craig McClanahan 并于 2000 年 5 月捐赠给 Apache 基金会。它以前位于 Apache Jakarta 项目下,被称为 Jakarta Struts,于 2005 年成为顶级 Apache 项目。”
等等。随意研究...
【解决方案2】:
您不需要所有这些框架来完成您的应用程序。尽管许多框架相互提供集成和支持,但您不必全部使用它们。建议你一层一层去。 Spring几乎在所有层都有用,Struts主要是一个MVC框架。 Spring MVC(Spring 的一部分)和 Struts 填补了同样的空白。 Tiles 是一个视图层框架。我认为 FreeMarker、Velocity 和 Tapestry 也是视图层框架。 JBOSS 是一个应用服务器。
Spring 和 EJB 2.x 是竞争对手。同样,EJB 适用于一些更复杂的应用程序,可以从 Spring 的创建者那里找到更多关于这方面的信息,他写了一整本关于为什么 EJB 不适合所有 Web 应用程序的书,这为后来的 Spring 奠定了基础.虽然现在,最新的 EJB 版本 3.x 似乎得到了很好的评价。您甚至没有提到 Hibernate 和 iBatis 来满足您的 Web 应用程序的 ORM 需求。
我建议您习惯企业 Java 世界中过多的框架。如果有的话,它表明 java 世界是活跃的。