借助BeanKeeper快速实现对象持久化 - 编程入门网
借助BeanKeeper快速实现对象持久化时间:2010-11-20 IBM 罗后启引言 NetMind BeanKeeper 是一个开源的 java 对象 / 关系数据库映 射框架,它可以帮助用户快速将对象保存到关系数据库中,同时它也支持自定义 地查询和事务,可以满足用户在各种应用场景的需求。它最大的特点就是简单, 无需配置。同时,它是纯 Java 的,也支持 HSQLDB 和 MySQL 等多种关系数据库。本文将介绍 BeanKeeper 的基本原理和架构,并将其同 Hibernate、Spring 等其他框架进行比较,总结其主要优点。最后将演示一个案例介绍如何借助 BeanKeeper 快捷地实现将 Java 对象保存到关系数据库中。 BeanKeeper 的架构 对象持久性几乎是所有 Java™ 应用程序( 从桌面应用程序到企业级应用程序)中的必备,持久性的缺点是它一直都不太简 单。 面向对象的开发方法是当今企业级应用开发环境中的主流开发方法 ,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关 系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中 表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系 数据无法直接表达多对多关联和继承关系。因此,需要 ORM(Object Relational Mapping)实现程序对象到关系数据库数据的映射。 由于关 系数据库是目前最流行的存储系统,因此要将对象持久化到关系数据库中,我们 就要解决 ORM 的问题。目前主流的 ORM 框架有:Spring、Hibernate 等框架。 它们都存在一个问题是:太复杂了。要利用这些框架进行对象持久化,开发人员 首先要阅读几百页的文档以了解如何使用这些框架,然后又要编写 XML 配置映 射文件以告诉框架如果和进行 ORM。而且一旦对象模型发生改变后又要修改映射 文件。这些都极大地增加了开发人员的学习曲线和工作量,同时也容易出错。而 Bean keeper 的理念是简单的事情简单做,它尽量简化这些操作。 Bean Keeper 是一个基于 LGPL 协议的开源软件,它具有如下特性: 使用简单,你只需要学习 3 个借口就可以基本掌握其使用方法 ; 零配置。除了数据库的连接 URL 外。你不需要其他配置 ; 可扩展性,这个类库支持分布式操作,可以将您的数据进行多拷贝存储和负 载平衡 ; 100% 地透明地支持 List、Map、Set 等集合 ; 自动分页大数据集。分页是 100% 透明地,包含百万条记录的数据集可以直 接地给表现层,而不用担心内存和数据库负载的问题 ; 自定义的面向对象的查询语言,用户不需要编写复杂的 SQL 语句 ; 各种数据库间的可移植性。BeanKeeper 屏蔽了各类数据库之间的差异,比如 对 Null 值的处理,空字符串 (Oracle),查询时大小写敏感,保留字等差异。 这就意味着你可以更改底层的数据库 ; 对事务的支持,能够实现事务的提交和回滚。 下载 BeanKeeper BeanKeeper 的安装过程很简单。首先,访问 BeanKeeper 站点下载 Jar 包 。目前最新的发布版本是 2.6.0。本文中所有示例也是基于此版本。 BeanKeeper 是基于 LGPL 协议的,你可以在你的商业软件中商业软件通过类 库引用 (link) 方式使用它而不需要开源商业软件的代码。但是如果修改它的代 码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生的代码都必须 采用 LGPL 协议。 图 1. BeanKeeper 目前版本 借助BeanKeeper快速实现对象持久化(2)时间:2010-11-20 IBM 罗后启此外 BeanKeeper 还依赖于下列类库:: commons-lang-2.4.jar commons-io-1.4.jar commons-logging.jar commons-collections-3.2.1.jar commons-configuration-1.6.jar log4j-1.2.15.jar 在本例中,我们使用的是 MySQL 数据库来持久化数据,所以我们还需要下载 MySQL 的 JDBC 驱动: mysql-connector-java-5.0.8- |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |