惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

AI
AI
TaoSecurity Blog
TaoSecurity Blog
H
Heimdal Security Blog
Help Net Security
Help Net Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Microsoft Azure Blog
Microsoft Azure Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Google DeepMind News
Google DeepMind News
爱范儿
爱范儿
The Cloudflare Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
人人都是产品经理
人人都是产品经理
大猫的无限游戏
大猫的无限游戏
N
News | PayPal Newsroom
V2EX - 技术
V2EX - 技术
博客园 - 【当耐特】
D
Darknet – Hacking Tools, Hacker News & Cyber Security
S
Secure Thoughts
C
CERT Recently Published Vulnerability Notes
罗磊的独立博客
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
P
Privacy & Cybersecurity Law Blog
有赞技术团队
有赞技术团队
S
Schneier on Security
S
SegmentFault 最新的问题
Google Online Security Blog
Google Online Security Blog
H
Hacker News: Front Page
The Last Watchdog
The Last Watchdog
Schneier on Security
Schneier on Security
PCI Perspectives
PCI Perspectives
IT之家
IT之家
Project Zero
Project Zero
博客园 - 司徒正美
P
Privacy International News Feed
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Jina AI
Jina AI
Security Latest
Security Latest
Hacker News - Newest:
Hacker News - Newest: "LLM"
腾讯CDC
C
CXSECURITY Database RSS Feed - CXSecurity.com
阮一峰的网络日志
阮一峰的网络日志
C
Check Point Blog
aimingoo的专栏
aimingoo的专栏
V
Vulnerabilities – Threatpost
W
WeLiveSecurity
NISL@THU
NISL@THU
Webroot Blog
Webroot Blog
N
Netflix TechBlog - Medium
L
Lohrmann on Cybersecurity

博客园 - singleblue

IIS7 asp.net配置默认文档的错误 画图工具 UI层方案征集 如何做自动录入数据功能 Failed to execute request because the App-Domain could not be created 解决ie7以下浏览器PNG图片背景不透明且链接失效的办法 拼接字符串的效率(转载) 最近准备用的数据访问类,欢迎拍砖! 关于JSON的文章 求助:如何合并两个PDF文档 取水晶报表的总页数 javascript操作cookie javascript全角半角问题 以支持多种浏览器的方式创建XMLHttpRequest对象 四种引用 使用AjaxPro与Session交互时遇到一个问题 window.print() 急求datastage 控件隐藏(Visible=false)的一个问题
B/S项目架构探讨
singleblue · 2009-10-28 · via 博客园 - singleblue

图中,是我对最近一个项目的架构设想,和网上普遍的三层架构类似
SQLDAL和MySQLDAL为数据访问层的不同实现,最终采用哪个数据访问层取决于配置文件,利用AOP来实现这一做法。DAL的实现上不采用ORM,担心数据量太大。
而BLL为不同的业务逻辑层实现,因为该项目是一个产品项目,会存在不同的客户在业务流程上的操作方法不一样,但最终数据表现还是一样的。
这里,我想在DAL层只实现SQL语句的生成,而不直接处理语句的执行。
而是在BLL层,调用公用类库中的数据访问类,结合DAL生成的SQL语句来处理语句的执行。
主要是考虑到下面原因:
1.DAL不用依赖于公用类库中的数据访问类DBHelper(DBHelper是通过DbFactory的思想来实现),项目只有BLL依赖于DBHelper
2.BLL中存在同一业务单据需要保存到两个不同类型的数据库中,并且需要操持事务的一致性
   如:  
          事务1.开始
          事务2.开始
          try
               事务1.执行
               事务2.执行
          catch
               事务1.撤消
               事务2.撤消
               throw ex
          事务1.提交
          事务2.提交

麻烦大家帮帮想想,这样的想法是否合理?是否存在其他更好的选择?麻烦给出建议
另外,大家是否有做过ASP.NET的插件式开发
以前在C/S结构时,可以通过反射的方式直接调用编写好的插件(带界面),以实现业务模块的可配置性
如果是B/S时,要怎么实现这样的做法?

有一点希望大家原谅,由于目前比较困惑,急于得到更多人的帮助,冒昧把这篇文章发布到首页