通用数据访问之我见

来源:互联网 发布:继承 js 编辑:程序博客网 时间:2024/04/28 00:27
   通常我们在设计系统的时候,都会考虑到数据库访问的扩展:现在用SQL Server,可能某天就要用Oracle了。所以,针对这个扩展,解决的方法有很多,但目的只有一个:假如真的有那天,我们对系统的整改应该最小化。最常用的手段应该属设计模式了(只可惜刚开始接触设计模式,好多东西还搞不清楚),但这里阐述的是我们目前采用的方式,采用继承的方式,轻松实现数据库切换.   首先要设计几个不同的数据访问类:Class_Oracle , Class_SqlServer.注意,其中除了使用不同Provider,大部分代码是一致的.
public class Class_Oracle{  //封装数据访问}
public class Class_SqlServer{  //封装数据访问}
然后写一个Class: DbService,根据使用的数据不同继承不同的数据访问类即可如果使用的是Oracle数据库,就这样,反之更改基类即可.
public class DbService:Class_Oracle{ //some code}
这样在Client端就可以统一使用DbService类,从而达到,更改数据库,client不受影响的效果.