快讯

使用设计模式构建通用数据库访问类

2004-02-14 09:34  出处:PConline  作者:佚名  责任编辑:ycx 

现在我们已经完成了所要的功能,下面,我们需要创建一个Factory类,来实现自动数据库切换的管理。这个类很简单,主要的功能就是根据数据库连接字符串,判断使用什么数据库,然后,返回适当的数据库操纵类。在这里,判断的方法很简单,只是根据两种数据库连接字符串的不同来判断。在实际中,随着数据库类的增加,判断的方法可能会有所变化,读者应当根据自己的实际情况来做相应的调整。 public class DBOperatorFactory { public static DBOperator GetDBOperator(string strConnection) {   if(strConnection.IndexOf("provider=")<0) //SqlServer {   return new SqlDBOperator(strConnection); }   else //other database {   return new OleDBOperator(strConnection); } } } 好了,现在,一切都完成了,客户端在代码调用的时候,可能就是采用如下形式: DBOperator db=DBOperatorFactory.GetDBOperator(strConnection) db.Open(); db.需要的操作 db.Close(); 或者: DBOperator db=DBOperatorFactory.GetDBOperator(strConnection) db.Open();db.BeginTrans(); try { db.需要的操作 db.CommitTrans(); } catch { db.RollbackTrans(); } db.Close(); 当数据库发生变化的时候,DBOperatorFactory会根据数据库连接字符串自动调用相应的类,客户端不会感觉到变化,也不用去关心。这样,实现了良好的封装性。当然,前提是,你在编写程序的时候,没有用到特定数据库的特性,例如,Sql Server的专用函数。
键盘也能翻页,试试“← →”键
IT热词搜索 来源:360新闻
软件论坛帖子排行
相关文章

相关软件:

腾讯QQ2012
大小:52.93 MB 授权:免费
腾讯QQ2012
立即下载
腾讯QQ2013
大小:49.32 MB 授权:免费
腾讯QQ2013
立即下载