WEB开发网      婵犻潧鍊婚弲顐︽偟椤栨稓闄勯柦妯侯槸閻庤霉濠婂骸浜剧紒杈ㄥ笚閹峰懘鎮╅崹顐ゆ殸婵炴垶鎸撮崑鎾趁归悩鐑橆棄闁搞劌瀛╃粋宥夘敃閿濆柊锕傛煙鐎涙ê鐏f繝濠冨灴閹啴宕熼鍡╀紘婵炲濮惧Λ鍕叏閳哄懎绀夋繛鎴濈-楠炪垽鎮归崶褍妲婚柛銊ュ缁傚秹鏁撻敓锟� ---闂佹寧娲╅幏锟�
开发学院软件开发Java 借助 BeanKeeper 快速实现对象持久化 阅读

借助 BeanKeeper 快速实现对象持久化

 2010-06-18 00:00:00 来源:WEB开发网 闂侀潧妫撮幏锟�闂佸憡鍨电换鎰版儍椤掑倵鍋撳☉娆嶄沪缂傚稄鎷�婵犫拃鍛粶闁靛洤娲ㄩ埀顒佺⊕閵囩偟绱為敓锟�闂侀潧妫撮幏锟�  闂佺ǹ绻楀▍鏇㈠极閻愭娑樷枎閹邦剛娉氶梺鍛婎殔濞层劌鈻撻幋婵愬殫妞ゆ梻鍘х憴锟�
核心提示: findSingle 方法返回单个对象,当查询到第一个满足条件的记录后,借助 BeanKeeper 快速实现对象持久化(7),即停止查询,返回结果,相对于 Hibernate 等框架要简单得多,同时它也支持复杂的查询和事务功能,事务控制事务指的是一系列原子的数据库操作,在我们的上下文中指的是对象

findSingle 方法返回单个对象,当查询到第一个满足条件的记录后,即停止查询,返回结果。

事务控制

事务指的是一系列原子的数据库操作,在我们的上下文中指的是对象操作。这一些操作要么是所有操作都成功完成,事务完成提交;要么是某一操作失败,数据回滚到事务开始前的状态。

BeanKeeper 目前只支持用户管理的事务界限划分,这就意味着你要指定事务的开始和事务的结束。即使你不显示地定义事务,事务其实也是隐含地存在的,因为你对 store 的每个操作(比如 save() 和 remove() 方法)都会隐式地创建一个事务,如果这个操作的某一环节出现了错误,这个事务将会回滚。

事务跟踪器(Transaction tracker)负责管理应用中的所有事务。如果你想跟踪事务的提交和回滚事件,你可以给事务跟踪器添加监听器,这样当提交和回滚操作进行时你将可以得到通知。

TransactionListener 接口包括两个方法:

void transactionCommited(Transaction transaction);

void transactionRolledback(Transaction transaction);

注意:这些方法得到触发这个事件的事务对象时,这些事务已经结束了,所以你不能利用它们去执行操作。同样地,当你从跟踪器中获取到事务对象,并执行某些数据库相关的操作时,为避免形成死循环,此时跟踪器中的事件将不会再被触发。

清单 4. 添加事务监听器代码

TransactionTracker tt= store.getTransactionTracker(); 
tt.addListener(new TransactionListener(){ 
  @Override 
  public void transactionCommited(Transaction transaction) { 
    System.out.println("Transaction Commited"); 
  } 
 
  @Override 
  public void transactionRolledback(Transaction transaction) { 
    System.out.println("Transaction Rolledback"); 
  } 
  
}); 

结束语

通过上文介绍,我们可以看出借助 NetMind BeanKeeper,我们不需要任何配置,只需使用 BeanKeeper 的三个接口便可实现将对象保存到关系数据库中,相对于 Hibernate 等框架要简单得多。同时它也支持复杂的查询和事务功能,可满足大部分应用场景的需要。

本文示例源代码或素材下载

上一页  2 3 4 5 6 7 

Tags:借助 BeanKeeper 快速

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接