Hibernate
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得 Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Eclipse平台下的Hibernate辅助开发工具:【Hibernate Synchronizer】【MiddlegenIDE】
IBATIS
使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象,这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步,为系统 设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显得别具意义。
Castor
Castor 一个Java开放源码数据绑定框架,它主要目标是提供Java对象与XML 的绑定, Java到SQL的持久化等.
Apache Torque
Apache Torque是一个使用关系数据库作为存储手段的Java应用程序持久化工具,是 Apache 的公开源代码项目,Torque是一个开源项目,由Web应用程序框架Jakarta Apache Turbine发展而来,但现在已完全独立于Turbine。 Torque 主要包含两部分:一部分是 Generator,它可以产生应用程序需要的所有数据库资源,包括 sql 和 java 文件;另外一部分是 Runtime,提供使用这些代码访问数据库的运行时环境。目前 Torque 支持的数据库包括 DB2、SQL Server、Oracle、PostgreSQL等。
Cayenne
Hibernate 之外的另一个开源 O/R 框架 Cayenne ,被成功用于商业生产环境。NHL.com 就是使用的 Cayenne ,每天超过 5 million 次的访问量。最新的版本 Cayenne 1.0 Final ,值得关注。
Speedframework
Speed 快速J2EE 开发框架Speedframework是一个完全基于JDBC开发的轻量级持久层框架. 它可以直接调用SQL,也可以直接对POJO进行CRUD操作,代码与ORM相当.调试方便,不用配置,内置JCS缓存,能有效降低数据库压力.
speed框架具有如下特点:
1.免配置持久层,免配置可以减少开发中配置带来的烦恼,调试带来的烦恼。
2.完全是jdbc封装操作,性能完全没问题。
3.jcs cache实现,对于数据库操作对象缓存减轻数据库压力。
4.自带分页组件,完全可以直接传入一条sql即可完成困难的分页逻辑,可以由客户自定义。
5.结合表、视图实体逻辑设计模式可以实现xp开发。
6.speed能自动识别表字段pk的自增主键,并可以返回自增字段值。
7.实现了jdbc的批处理封装,存储过程调用等jdbc api常用的封装。
8.降低了入门门槛,有利于初期开发和中后期维护,适用于开发程序员经常更换的团队。
Simple persistence
Simple persistence是一个O/R映射框架。它使用简单,没有XML映射文件、不需要创建表格(将自动创建)、不用生成ID、不用理会关键字,只需把它指向数据库,就可以实现新增、修改、删除、查询操作。Simple persistence支持事务,有自己的简单查询语言(类似于Hibernate的HQL),并能够处理对象关联,lists和maps。
Ammentos
Ammentos是一个适用于JDK5,轻量级的,开源的持久层框架. 它与JDK5注释(annotations)相结,支持事务,支持事件驱动编程,不需要配置,使用简单等.
Mr.Persister
Mr.Persister是一个既简单又小的O/R映射API。可以从关系型数据库读取Java对象,也可以把Java对象写到数据库中。Mr. Persister主要的特点:
没有映射文件也不需要手动映射。
没有自己特有的查询语言。
Jar文件只有97KB。
Mr. Persister的运行体系都是以组件的方式实现。
SimpleORM
SimpleORM是Java对象关系映射的开源项目.它在JDBC的基础上提供了一个简单但高效能的O/R映射.它甚至不需要XML配置文件.
Compass
Compass是一个强大的,事务的,高性能的对象/搜索引擎映射(OSEM:object/search engine mapping)与一个Java持久层框架.Compass包括:
* 搜索引擎抽象层(使用Lucene搜索引荐),
* OSEM (Object/Search Engine Mapping) 支持,
* 事务管理,
* 类似于Google的简单关键字查询语言,
* 可扩展与模块化的框架,
* 简单的API.
Speedo
Speedo实现了JDO规范。它使用了objectweb设计的Jorm, Medor和Perseus 框架。
pBeans
这是基于Java的持久层。提供了自动的对象/关系(O/R)映射,可以将JavaBeans 映射到数据库表。功能有持久性、自动表创建、修改,许多查询,等等。
Jaxor
Jaxor是一个简单但功能强大的创建到关系映像层对象的工具。它允许开发者轻松地在表中插入、更新、删除行,但也可被扩展为创建一个可扩展的映像层,这个层可创建一个完全的域模型,透明地映射到数据库表。
Prevayler
Prevayler一个把Java对象都保持在内存中的持久层框架,不需要数据库。可以这么说到目前为止对于POJOs(Plain Old Java Objects )是最快的,最显然的对象持久化,具有容错机制,提供负载平衡的框架。Prevayler在Eclipse下的插件Preclipse
Bhavaya
Bhavaya是一个Java库它提供实时地与最新状态地(up-to-date)访问数据库数据.它一个包含持久层.这个框架利用数据库中的数据来填充Java对象并保持对象中的数据是最新的的.这个类库也提供许多当处理频繁地数据交换时经常要用的用户接口与工具类.
OpenJPA
OpenJPA是Apache组织的一个Java EE持久层开源项目,它实现了EJB3.0中的JPA标准,为开发者提供功能强大、使用简单的持久化数据管理框架。OpenJPA封装了和关系型数据库交互的操作,让开发者把注意力集中在编写业务逻辑上。OpenJPA既可以作为独立的POJO持久层框架使用,也可以与所有符合EJB 3.0标准的容器或者其它轻量级框架相集成。

AOP框架