Bean 和 JDBC 的简单持久化工具 1.0
下载地址: http://www.chinajavaworld.com/non-cgi/usr/2/2_17866.zip
安装和使用: 在 Windows 下配置 sql 目录下的 bean_test.mdb 到 ODBC 数据源, 名称为 beantest. 您也可以修改 ConnectionFactory 里面的连接字串打开其它连接, 数据库的创建请参考 bean_test_access.sql. 本程序需要 JDBC 2.0 和 JDK 1.3 以上版本. Bean 和 JDBC 的简单持久化工具, 本工具将 Bean 的属性表示和数据库的持久化相分离. 仅仅实现了单个对象的以及数据库支持的简单 Java 对象的持久化, 包括 CRUD 四个操作, 即 Create(创建), Read(读取), Update(更新), Delete(删除). 分别可以通过调用 BeanJdbcPersistence 类中的 createBean(), readBean(), updateBean() 和 deleteBean() 来完成. 需要提供两个文件: Bean 类文件和 Bean类名.properties, 详情请参考 Bean1 的实现以及 studio.beansoft.bean.BeanPropertyLoader 中的注释. 未实现一对一和多对多映射. 示例代码请参考 studio.beansoft.bean.Bean1 和 Bean1.properties 文件.
Email: beansoftstudio@yahoo.com.cn QQ: 9991483 MSN: beansoftstudio@msn.com
使用方法说明: 1. 先编写一个有 id 属性的 Bean; package studio.beansoft.bean;
import studio.beansoft.sql.*;
/** * <p>Title: 用来测试持久化的 Bean.</p> * <p>Description: 该 Bean 最少要有一个 id 属性, 类型为 int 和一个其他属性. * 数据库信息配置文件: Bean1.properties</p> * <p>Copyright: Copyright (c) 2004</p> * <p>Company: </p> * @author 刘长炯 * @version 1.0 */
public class Bean1 { // --- Bean 属性, 必须设置 getter 和 setter --- private String name = "Sample"; private int id; private boolean deleted;
// --- 私有对象, 不要设置 getter 和 setter --- // Bean 和 JDBC 的简单持久化工具 private BeanJdbcPersistence persistence = new BeanJdbcPersistence();
public Bean1() { }
/** * 将当前对象的值插入到数据库中并获取相应的数据库 ID * @return int - 插入行数 */ public int create() { return persistence.createBean(); }
/** * 根据数据库 ID 读取对应列的数据到 Bean 中 */ public void read() { persistence.readBean(); }
/** * 更新 Bean 值到数据库中. * * @return int - 插入行数 */ public int update() { return persistence.updateBean(); }
/** * 从数据库中删除 Bean 记录. * * @return int - 删除行数 */ public int delete() { return persistence.deleteBean(); }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public int getId() { return id; }
public void setId(int id) { this.id = id; }
public boolean isDeleted() { return deleted; }
public void setDeleted(boolean deleted) { this.deleted = deleted; }
public static void main(String[] args) { Bean1 bean11 = new Bean1(); Bean1 p = new Bean1(); p.setId(1); //p.create(); p.read();
System.out.println(p.getName()); System.out.println(p.isDeleted()); } }
2. 创建数据库配置属性文件 Bean1.properties, 存放在 Bean 所在目录下 # 这个文件演示了如何进行持久化映射文件的配置, # 这是一个按照 java.util.Properties 类规定的标准编写的属性文件, 以 # 开始的行为注释 # Copyright (c) 2004 BeanSoft Studio All rights reserved.
# 第一部分, 指定 Bean 在数据库中存储的表格名, 可选 .tablename = test_bean
# 第二部分, 指定每个 Bean 属性和数据库表格字段的映射, 每个属性都是可选的, 如果不指定, # 则默认按照属性名处理 id = id_column deleted = deleted_column name = name_column
3. 在数据库中创建相应的表格
CREATE TABLE test_bean ( id_column COUNTER (1, 1) NOT NULL , name_column varchar(50) NULL, deleted_column bit NULL )
4. 如果有必要, 请修改 ConnectionFactory 中的获取数据库连接的方法;
5. OK, 调用 Bean 的 create(), 就向数据库中插入一条记录并读取 id 值保存起来, 调用 read(), 就根据 id 值从数据库中读取数据并保存到 bean 的变量中去, 调用 update(), 就将 bean 的属性值更新到数据库中去(根据 id 确定要更新的记录), 调用 delete(), 就从数据库中删除此记录.
一切的核心围绕着 id 进行, 数据库字段越多, 越能体现这个类的优点. |