大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
.项目概述与架构分析
微软刚推出了基于ASP.NET 2.0下的Pet Shop 4, 该版本有了一个全新的用户界面。是研究ASP.NET 2.0的好范例啊,大家都知道,一直以来,在.NET和Java之间争论不休,到底使用哪个平台开发的企业级应用性能最好、结构最优、生产力最高。为了用事实说话,通过对项目各方面的性能评估进而在比较.NET和Java的高下。用户做比较的这个项目就是Petshop。正因为Petshop肩负着上面所说的重任,各方面必须是最优的,架构设计应该是经过慎重考虑的。所以其一经推出,便成为了开发者、架构师等人学习、研究的典范。
.用System.Transactions代替了原来的Serviced Components提供的事务功能
public
void Insert(PetShop.Model.OrderInfo order)
。
.用强类型的范型集合代替了原来的弱类型集合
.采用ASP.NET 2.0 Membership来做认证和授权
.创建了针对Oracle 10g的Custom ASP.NET 2.0 Membership Provider
.利用ASP.NET 2.0的Custom Oracle 和 SQL Server Profile Providers 做用户状态管理,包括购物车等
.采用了Master Pages,取代了原来的用户控件,来实现统一的界面效果
.使用了ASP.NET 2.0 Wizard控件实现check-out
.使用了SqlCacheDependency来实现数据库层次的缓存更新(cache invalidation)功能
.使用了消息队列来实现异时订单处理。
整体架构:
数据库:(暂略)
序号
| 项目名称
| 描述
|
1 |
BLL |
业务逻辑层 |
2 |
CacheDependencyFactory |
缓存依赖类的 工厂类 |
3 |
WEB |
表示层 |
4 |
DALFactory |
数据层的抽象工厂 |
5 |
DBUtility |
数据访问类组件 |
6 |
IBLLStrategy |
同步/异步策略接口 |
7 |
ICacheDependency |
缓存依赖类 接口 |
8 |
IDAL |
数据访问层接口定义 |
9 |
IMessaging |
异时处理消息队列接口定义 |
10 |
IProfileDAL |
Profile 的数据访问层接口定义 |
11 |
Membership |
Membership 认证和授权管理 |
12 |
MessagingFactory |
异时处理消息队列的 抽象工厂 |
13 |
Model |
业务实体 |
14 |
MSMQMessaging |
异时处理消息队列的实现 |
15 |
OracleDAL |
Oracle 数据访问层 |
16 |
OracleProfileDAL |
Oracle 的Profile Providers 做用户状态管理,包括购物车等 |
17 |
OrderProcessor |
后台处理进程,处理订单队列 |
18 |
Profile |
Profile 的数据访问层 |
19 |
ProfileDALFactory |
ProfileDAL 的工厂类(反射创建ProfileDAL) |
20 |
SQLProfileDAL |
SQL Server 的Profile Providers 做用户状态管理,包括购物车等 |
21 |
SQLServerDAL |
SQLServer 数据访问层 |
22 |
TableCacheDependency |
缓存依赖实现类 |
:
序号
| 项目名称
| 描述
|
1 |
WEB |
表示层 |
2 |
Model |
业务实体 |
3 |
BLL |
业务逻辑层 |
4 |
DALFactory |
数据层的抽象工厂 |
5 |
IDAL |
数据访问层接口定义 |
6 |
SQLServerDAL |
SQLServer 数据访问层 |
7 |
OracleDAL |
Oracle 数据访问层 |
8 |
DBUtility |
数据库访问组件基础类 |
9 |
CacheDependencyFactory |
缓存依赖类的 工厂类 |
10 |
ICacheDependency |
缓存依赖类 接口 |
11 |
TableCacheDependency |
缓存依赖实现类 |
12 |
IBLLStrategy |
同步/异步处理策略接口(实现在bll根据配置反射选择) |
13 |
MessagingFactory |
异时处理消息队列的 抽象工厂 |
14 |
IMessaging |
异时处理消息队列接口定义 |
15 |
MSMQMessaging |
异时处理消息队列的实现 |
16 |
Profile |
Profile 的数据访问层 |
17 |
ProfileDALFactory |
ProfileDAL 的工厂类(反射创建ProfileDAL) |
18 |
IProfileDAL |
Profile 的数据访问层接口定义 |
19 |
OracleProfileDAL |
Oracle 的Profile Providers 做用户状态管理 |
20 |
SQLProfileDAL |
SQL Server 的Profile Providers 做用户状态管理 |
21 |
Membership |
Membership 认证和授权管理 |
22 |
OrderProcessor |
后台处理进程,处理订单队列 |
.Petshop 4中的设计模式
:
:
:数据访问层的抽象工厂(决定创建哪种数据库类型的数据访问层。可以选择:SQLServer,Oracle)
:
缓存依赖类的
工厂类。(创建具体表的缓存依赖)
:
异时处理消息队列的
抽象工厂(反射创建具体的
异时处理类
)
:
ProfileDAL
的工厂类(反射
选择
创建Oracle 和SQL Server的 ProfileDAL)
IorderStrategy
转载于:https://blog.51cto.com/liweibird/289958
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/181066.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...