转贴一篇文章:Jakara项目简介

在lendo老兄那儿看到这么 一份表格,上面简单介绍了一下Apache Jakara项目下的各个子项目。一直以来,都是只关注其中的一些项目却对其他的项目视而不见。呵呵,这个习惯不好。好吧,一起来看看Jakara里都有一些什么好东东,顺便作一下知识储备,或许以后哪天便要用到这些工具,避免费了大力气重复造了轮子还不讨好。
下面是转载的内容,有些项目lendo没有作说明,我顺便补上吧。

项目 <o:p> </o:p>

子项目 <o:p> </o:p>

介绍 <o:p> </o:p>

<st1:place w:st="on"> <st1:city w:st="on"> Jakarta </st1:city> </st1:place> <o:p> </o:p>

BCEL<o:p></o:p>

The Byte Code Engineering Library, 让使用者能够方便地分析 , 创建和操作二进制得 class 字节码 , 如果想学习虚拟机和 class 文件内容 , 这应该是一个好工具 ,BCEL 有一个字节码得校验器 , 叫做 JustIce, 通常他能够提供比 JVM 更全面的类的信息 . 他已经用在许多的编译器 , 优化器 , 代码生成器和代码分析工具中 . <o:p> </o:p>

BSF <o:p> </o:p>

Bean Scripting Framework, 它能够提供 Java 语言的脚本支持 , 能够从 Script 脚本中访问 Java 对象和方法 ,BSF 允许 JSP 访问 Java , 它还可以通过内含的方式让任何语言部分地实现 Java 的接口 , 这主要是在 Java 中提供脚本引擎来实现的 .BSF 支持以下的脚本语言 :JavaScript( ajar),NetRexx,Python,JRuby,Groovy . <o:p> </o:p>

Cactus <o:p> </o:p>

它是一个服务器端代码的简单测试工具 , 如测试 (Servlets, EJBs, Tag Libs, Filters, ...). 它是为了降低服务端测试代码的编写工作量 , 使用了 JUnit 并进行了扩展 .Cactus 实现了容器内测试的策略 , 测试都在容器内部进行 . 它相对于单元测试的优点 :<o:p></o:p>

代码逻辑单元测试 , 做这个测试最好的是 Mock Objects.

集成单元测试 .<o:p></o:p>

功能性的单元测试 , 能够测试服务端的返回值 . <o:p> </o:p>

Commons<o:p></o:p>

主要关注于组件的可重用性 , 它又分为 3 个大的部分 .<o:p></o:p>

已发布的的组件 ( The Commons Proper )<o:p></o:p>

开发中的组件 ( The Commons Sandbox )<o:p></o:p>

暂时停止开发的组件 ( The Commons Dormant )<o:p></o:p>

开发小组尽量让其开发的组件对其他组件的依耐性最小 . 并且尽量保持组件的接口的稳定性 .<o:p></o:p>

The Commons Proper <o:p> </o:p>

Attributes <o:p> </o:p>

让开发者可以使用 C# .net 样式的 attributes, 是一种运行时的 api, 有点类似 doclet. <o:p> </o:p>

Beautils<o:p></o:p>

和标准 JavaBean 使用有关 , 可以用来拷贝 JavaBean, 使用了反射和内省 , 大量地被使用 .<o:p></o:p>

Betwixt<o:p></o:p>

能够在 JavaBean XML 之间互相转换 <o:p> </o:p>

Chain<o:p></o:p>

责任链模式的一个实现 <o:p> </o:p>

CLI<o:p></o:p>

命令行参数解析 , Werken, Avalon Optz 组成 <o:p> </o:p>

Codec<o:p></o:p>

编码 , 译码运算法则 ,phonetic( 语音 ), base64, URL <o:p> </o:p>

Collections<o:p></o:p>

扩展了 java.util.collection 接口 <o:p> </o:p>

Configuration<o:p></o:p>

用不同的格式读取配置文件 <o:p> </o:p>

Daemon<o:p></o:p>

unix 下的选择调用机制 <o:p> </o:p>

DBCP<o:p></o:p>

数据连接池服务 , 使用于任何数据库 <o:p> </o:p>

DbUtils<o:p></o:p>

JDBC 辅助类 <o:p> </o:p>

Digester<o:p></o:p>

XML 文件到 Java 对象的映射机制 <o:p> </o:p>

Discovery<o:p></o:p>

<o:p> </o:p>

EL<o:p></o:p>

JSP 2.0 中的表达式语言解释器 <o:p> </o:p>

Email<o:p></o:p>

Java 发送邮件的库 <o:p> </o:p>

FileUpload<o:p></o:p>

Servlet web 应用具有文件上传的能力 <o:p> </o:p>

Http Client<o:p></o:p>

http 协议客户端一起协作的框架 <o:p> </o:p>

IO<o:p></o:p>

I/O 框架集合 <o:p> </o:p>

Jelly<o:p></o:p>

基于表达式和处理引擎的 XML<o:p></o:p>

Jexl<o:p></o:p>

是对 Jstl 的一种扩展 <o:p> </o:p>

JXPath<o:p></o:p>

XPath 语法访问和操作 JavaBean<o:p></o:p>

Lang<o:p></o:p>

扩展了 java. lang <o:p> </o:p>

Launcher<o:p></o:p>

提供多平台的 Java 程序加载 <o:p> </o:p>

Logging<o:p></o:p>

提供日志的实现 <o:p> </o:p>

Math<o:p></o:p>

轻量的 , 独立的数学和统计组件 <o:p> </o:p>

Modeler<o:p></o:p>

创建符合 JMX 规范的 MBeans 机制 <o:p> </o:p>

Net<o:p></o:p>

网络和协议实现的集合 <o:p> </o:p>

Pool<o:p></o:p>

对象池组件 <o:p> </o:p>

Primitives<o:p></o:p>

java 简单类型使用的扩展 <o:p> </o:p>

SCXML<o:p></o:p>

<o:p> </o:p>

Transaction<o:p></o:p>

处理多级事务的集合 <o:p> </o:p>

Validator<o:p></o:p>

使用 XML 定义验证规则的框架 <o:p> </o:p>

VFS<o:p></o:p>

虚拟文件系统 <o:p> </o:p>

The Commons Sandbox <o:p> </o:p>

Compress<o:p></o:p>

定义操作压缩文件的 API<o:p></o:p>

CSV<o:p></o:p>

CSV 文件的操作 <o:p> </o:p>

你可能感兴趣的:(应用服务器,框架,单元测试,脚本,groovy)