Apache java项目全介绍

 
最近接触 Jakarta-Common-BeanUtils 这个东东比较多,于是对 Apache Jakarta Project 产生了兴趣,上他们的官方网站上看了下感觉有用的东西好多,眼花缭乱的,又没有中文网站,又上各大论坛搜了下,也没有发现一个集中该项目的资料,于是决定自己整理翻译一下,有助于各位网友更好的了解该项目。如果有什么描述不对不全面的地方,希望各位提出来给大家分享。
Jakarta 项目是 ASF(The Apache Software Foundation) 的一部分。 ASF 是一个非赢利组织,她鼓励基于开放的软件许可下进行合作、注重实效的开发,并提供各个领域的高质量软件,她涉及到 Http 服务器,编译工具,类库,开发架构,服务器端 Java 技术 ,J2EE 容器,数据库工具,日志工具, XML 解析等等诸多领域。 ASF 提供的 java 项目有一部分在 Jakarta 中,还有一些成为独立的诸如 Tomcat 的项目 ,Jakarta 项目则提供了多种多样开源的 java 解决通用方案。
先介绍一下 ASF 中和 Jakarta 项目并列的 java 项目:
·                     Ant ——java 构建工具,使用一个配置文件就可以完成 java 的项目的,编译、打包、测试、运行、部署、生成文档等诸多工作。
·                     Avalon —— 是一个包括核心框架、工具、组件和容器的面向组件编程( AOP )的完整开发平台。使用关键设计模式,如反向控制模式( IoC )和分离考虑模( SoC )。  Avalon 提供各种基本组件和缺省的应用程序模块,帮助你快速的建立你自己的应用程序解决方案。
·                     Excalibur —— 集多个开源项目 (Avalon Framework LogKit Cornerstone) 于一身的轻量级可嵌入式反向控制容器。
·                     Gump —— Apache 组织自己也使用的一个持续集成工具,全面支持 Ant Maven ,当有新的改动提交到版本控制系统,它可以检查出潜在  的冲突,并及时通知项目组的所有成员并自动生成改动的详细报告。
·                     James —— 是一套用 java 开发的邮件、新闻组、消息服务器,提供了比较完善的配置方案,尤其是关于邮件内容存储和用户信息存储。  支持 SMTP, POP3 , NNTP , IMAP
·                     Logging —— 可靠,快速的日志工具。
·                     Lucene ——Java 开发的高性能,全方位的文本搜索引擎。替文件的每一个字作索引,索引让搜寻的效率比传统的逐字比较大大提高,  Lucen 提供一组解读,过滤,分析文件,编排和使用索引的 API ,它的强大之处除了高效和简单外,  是最重要的是使使用者可以随时应自已需要自订其功能。
·                     Maven —— 是一个潜在的基于 java apache ant 的构建工具的替代者。提供了更强大的功能和易用性。
·                     Portals —— 提供了功能全面的、具有商业价值的企业门户。门户概念:门户对企业内的各种资源如信息管理系统进行整合并通过单一接口  对外提供服务,雇员、合伙人及顾客可以通过任何装置在任何地点通过门户入口享受到企业提供的服务,  分析家们预计 , 门户将成为下一代的桌面环境。
·                     Struts —— 一个实现 MVC model2 web 应用程序开发框架。通过一个配置文件可以很好的对各种组件进行装配,结构清晰,应用的最广泛的额 web 开发框架。
Tapestry——
类似 Struts ,也是一个基于 servlet 的应用程序框架,支持 MVC ,出现的较晚,不如 Struts 普及,主要利用 javabean xml 技术进行开发,
·                     Tomcat ——Serlvet 容器,同时具有传统的 Web 服务器的功能,如:处理 Html 页面。能够处理动静态网页。
·                     Watchdog —— 用来检查一个 servlet jsp 容器在相应规范上的执行情况的兼容性。但是该项目已经静止了,只支持 Servlet2.3 JSP1.2 ,相应  Serlvet 容器如 Tomcat 也只支持 Tomcat4.x

       
下面介绍下 Jakarta 的各个子项目:
·                     Alexandria—— 已经不再开发
·                     BCEL ——The Byte Code Engineering Library (formerly known as JavaClass) 字节码引擎类库,它让用户方便的分析,创建,操作 java class 文件成为可能。  它可以让您深入 JVM 汇编语言进行类操作的细节。
·                     BSF ——bean 脚本框架 java 应用内对脚本语言提供了支持,通过脚本语言可以访问 java 的对象和方法。
·                     Cactus —— 一个基于 JUnit 框架的简单测试框架,用来单元测试服务端 Java 代码。  Cactus 单元测试服务端内容包括 servlet,EJB,  tag librarie, filter
·                     Commons —— 提供很多日常开发中使用率很高的功能解决方案,已被很多著名的开源项目采用。具体的项目列表后面会有。
·                     ECS —— 使用 Java 语言和面向对象方法创建标记语言文档 (HTML,XML) 的开源项目。
·                     HiveMind —— 是一个服务和配置的微型内核, 一套通过简单的 java 对象和接口创建复杂应用的框架。
·                     HttpComponents —— 提供了 java.net 包所不能提供的更多强大的、方便的 http 协议处理功能。
·                     JCS —— 一个分布式的缓存系统,用来提高应用程序的性能,并且提供很多强大的额外功能。
·                     JMeter —— java 开发的一套桌面应用程序。用来进行功能测试和性能测试。它可以用来测试静止资料库或者活动资料库中的服务器的运行情况,  可以用来模拟对服务器或者网络系统加以重负荷以测试它的抵抗,或者用来分析不同负荷类型下的所有运行情况。  它也提供了一个可替换的界面用来定制数据显示,测试同步及测试的创建和执行。
·                     ORO —— 一套文本处理工具,能提供 perl5.0 兼容的正则表达式、 AWK-like 正则表达式 , glob 表达式。还提供替换,分割,文件名过虑等功能。
·                     POI —— 一套用来创建,读写基于 OLE 2 组件文档格式的文件。使用 Java 来读写 MS Excel ,Word 文件。
·                     Regexp —— 一套纯 java 的正则表达式相关的包。
·                     Slide —— 主要模块是一个可以做为内容管理框架底层的内容仓库 . 它可以把内容信息存取到专门的 , 异质的 , 分布式的数据库中 .Slide 还增加了 security, locking, versioning 等特性 .
·                     Taglibs —— 一套在开发 web 应用时十分有用的, jsp 通用 tag 包。
·                     Turbine —— 类似 Struts ,也是一个基于 servlet 的应用程序框架,支持 MVC 。提供了大量可重用的组件。此框架包中包含了大量组件,但是这些组件是离散的。
·                     Velocity —— 是一个基于 java 的模板引擎( template engine )。它允许任何人仅仅简单的使用模板语言( template language )来引用由 java 代码定义的对象。    Velocity 应用于 web 开发时,界面设计人员可以和 java 程序开发人员同步开发一个遵循 MVC 架构的 web 站点,  也就是说,页面设计人员可以只关注页面的显示效果,而由 java 程序开发人员关注业务逻辑编码。  Velocity java 代码从 web 页面中分离出来,这样为 web 站点的长期维护提供了便利,  同时也为我们在 JSP PHP 之外又提供了一种可选的方案。 Velocity 的能力远不止 web 站点开发这个领域,  例如,它可以从模板( template )产生 SQL PostScript XML ,它也可以被当作一个独立工具来产生源代码和报告,  或者作为其他系统的集成组件使用。 Velocity 也可以为 Turbine web 开发架构提供模板服务( template service )。  Velocity+Turbine 提供一个模板服务的方式允许一个 web 应用以一个真正的 MVC 模型进行开发。
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值