petshop 4.0实现细节研究


petshop 4.0

支持多种数据库,数据库都MODEL 化。数据操作层DBUTILITY. 工厂模式

基本功能实现BLL----DALFactory(工厂层)---IDAL(接口层) --SQLServerDAL(数据层实现接口层)

根据WEB.CONFIG配置<add key="WebDAL" value="PetShop.oracleDAL"/>,数据层也可以由oracleDAL层实现。

订单除了由上面方式实现外,还有一种异步实现方式实现

Synch(同步方式)

BLL -  IBLLStrategy层(实现了订单工厂层接口层合2为1)--根据接口层实现配置<!-- Order processing options (Asynch/Synch) -->
  <add key="OrderStrategyAssembly" value="PetShop.BLL"/>(订单处理逻辑层)---BLL的实现逻辑层类这里是为BLL-----  根据

<add key="OrderStrategyClass" value="PetShop.BLL.OrderSynchronous"/>(订单处理类分同步、异步处理类)----找到实现的同异步

方式--如果是同步方式----数据层实现为DALFactory中定义的订单数据实现---根据DALFactory中<add key="OrdersDAL"

value="PetShop.SQLServerDAL"/>定义确定具体数据层实现--IDAL---DAL

Asynch(异步)

BLL -  IBLLStrategy层(实现了订单工厂层接口层合2为1)--根据接口层实现配置<!-- Order processing options (Asynch/Synch) -->
  <add key="OrderStrategyAssembly" value="PetShop.BLL"/>(订单处理逻辑层)---BLL的实现逻辑层类这里是为BLL-----  根据

<add key="OrderStrategyClass" value="PetShop.BLL.OrderSynchronous"/>(订单处理类分同步、异步处理类)----找到实现的同异步

方式--如果是异步方式---数据工厂层MessagingFactory层----IMessaging(消息队列层 异步)---根据<add key="OrderMessaging"

value="PetShop.MSMQMessaging"/>----数据层PetShop.MSMQMessaging确定

缓存结构(只对SQLSERVER有效ORACLE还没有处理返回的为空,使用ORACLE时要保持的WEBCONFIG此配置节为空)缓存应用了SQL缓存键依赖项

web层的APP_CODE代码中处理逻辑层----PetShop.CacheDependencyFactory(工厂层) ---PetShop.ICacheDependency(接口层)--

-PetShop.TableCacheDependency(数据缓存层)
SQL缓存键依赖项实例
AggregateCacheDependency cd = DependencyFacade.GetCategoryDependency(); 创建依赖项

HttpRuntime.Cache.Add(cacheKey, data, cd, DateTime.Now.AddHours(cacheDuration), Cache.NoSlidingExpiration,

CacheItemPriority.High, null);

protected AggregateCacheDependency dependency = new AggregateCacheDependency();
dependency.Add(new SqlCacheDependency(dbName, tableName));  此处是增加依赖代码根据数据库名和表名
return dependency;


Profile实现购物车 WEB.CONFIG存在一下三个PROFILE
ShoppingCart   WishList   AccountInfo 
PetShop.Model.AddressInfo 订单地址即帐号


PetShop.ProfileDALFactory
PetShop.IProfileDAL
PetShop.Profile


最后一层的实现都有相应的ORACLEDAL的实现层 在消息队列  ORACLE用的是WINDOWS 服务 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值