浅谈提供者模式(provider pattern)
这是2009年的第二天,也是我在2009年写的第一篇随笔。良好的开始是成功的一般。希望今年我能写出更好的文章能给大家带来帮助。有助于我们一起前进。
有一个实体Provider类,对它的操作有AddItem(),持久化数据在SqlServer数据库中或txt文件里。根据配置文件中的配置来决定数据持久化方案是使用SqlServer数据库还是txt文件;
类的结构如下:
类的说明如下:
CartProvider 是一个抽象类,里面封装了要实现的方法。如果要加其他的方法可以在这里面加,例如:从不同的存储介质中读取内容等。就加在这里面,子类实现就好了。
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
FileProvider 是一个将数据写进文件里面的类
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
DBProvider 是将数据写进数据库里面的类。
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
MyCartProvider 实现客户真正调用的类。并通过读取配置文件调用不同的方法
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
主函数调用
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)