DTcmsV4.0分析学习——(2)系统框架
2.1物理结构
共8个项目,Web为启动项
项目间相互依赖关系图:
2.2逻辑结构
DTcms V4.0轻量级CMS系统框架采用的是典型的三层架构(项目与三层架构并非直接对应关系,至于什么是三层架构这里不细谈,可自行谷歌或百度了解),具体如下:
2.2.1 API:Oauth协议、支付接口
OAuth已集成:飞信、开心网、QQ、人人网、新浪微博、淘宝
支付接口已集成:支付宝、财付通、网银在线(京东支付)
2.2.2 BLL:业务逻辑
BLL项目也是三层结构的业务逻辑层,大部分的业务逻辑都在该项目中处理。
以文章内容为例:
(1)基本方法:也就是常规的CURD
(2)扩展方法:针对性的逻辑处理,如文章内容的“获取阅读次数”
(3)前台模板调用方法:用于前台模版标签的调用
备注:
每个逻辑处理类都与数据库的表关联,而表名的前缀是动态的,DTcms的处理方式是在每个BLL类中的构造函数获取表前缀,然后传给DAL,个人感觉太繁琐,不合理
2.2.3 Common:公共方法
Common属于独立项目,常用方法类的封装
2.2.4 DAL:数据访问
DAL项目主要负责数据库的访问,依赖于DBUtility底层数据操作公共方法
2.2.5 DBUtility:数据访问公共方法
2.2.6 Model:实体
实体类项目,每个实体类对应数据库的一张表,每个属性对应表的字段
2.2.7 Web:UI界面
2.2.8 Web.UI:界面控制
Web项目的前台aspx页面对应一个Web.UI项目的cs文件
转载于:https://www.cnblogs.com/hifor/p/4561302.html
DTcmsV4.0分析学习——(2)系统框架相关推荐
- 学习数码相框1.1.0.0数码相框之系统框架
学习数码相框1100数码相框之系统框架 数码相框项目的弄清需求 数码相框项目的框架图 总结 学习数码相框1.1.0.0数码相框之系统框架 项目的流程 1.弄清需求 2.设计框架 3.编写代码 4.测试 ...
- DTcmsV4.0分析学习——(1)数据库结构分析
数据库名:DTcmsdb4 DTcmsV4.0共35张表(33张表+2张插件表) dt_article 内容管理 dt_article_albums 图片相册 dt_article_attach 附件 ...
- [iOS开发]——系统框架(effectiveOC2.0阅读笔记)
系统框架 第47条:熟悉系统框架 要点 第48条:多用块枚举,少用for循环 for循环 使用 Objective-C 1.0的 NSEnumerator 来遍历 快速遍历 基于块的遍历方式 要点 第 ...
- 配置IIS6.0和.net4.7框架(windows10系统)
配置IIS6.0和.net4.7框架(windows10系统) 1:打开启动或关闭windows系统 2:如下选择勾选 3:点击确认关闭 注: 配置完之后要到IIS中设置为允许状态. 在IIS中设置运 ...
- 《HiWind企业快速开发框架实战》(0)目录及框架简介
<HiWind企业快速开发框架实战>(0)目录及框架简介 本系列主要介绍一款企业管理系统快速开发框架,该框架旨在快速完成企业管理系统,并实现易维护可移植的目标. 使用逐个系统模块进行编码的 ...
- rola物联网框架_如何搭建一个物联网系统框架?
下面将谈到几个关键问题: 设备如何接入网络? 设备间如何通信? 物联网数据的用途? 如何搭建起一个物联网系统框架呢?它的技术架构又是怎么样呢? 物联网终端软件系统架构? 物联网云平台系统架构? 1.物 ...
- IOT(5)---物联网系统框架介绍
转载: https://blog.csdn.net/robert_tin 物联网系统框架介绍 下面将谈到几个关键问题: 设备如何接入网络? 设备间如何通信? 物联网数据的用途? 如何搭建起一个物联网系 ...
- 【网络驱动】GMAC 系统框架
转自 (https://blog.csdn.net/dkmknjk/article/details/126629418) GMAC 系统框架 GMAC 通常由 MAC 控制器和 PHY 构成. CPU ...
- Android蓝牙系统框架和代码结构
Android蓝牙系统框架和代码结构 概述 在 Android 4.2版本中,谷歌公司和博通合作,引入了博通的 BTE/BTA 协议栈,重构了蓝牙子系统.新的蓝牙协议栈被命名为 BlueDroid.它 ...
- OSAL系统框架专题
OSAL系统框架专题2010-4-15 2:47:00 9. TI协议栈所用系统框架探讨. 51的系统往往不是太大,但是几十K的程序,也足以让一个初学者望而却步.我们首先忽略C语言本身的难度,光是系统 ...
最新文章
- 一文详解相机标定算法原理
- [值得学习]售前工程师的成长---一个老员工的经验之谈(一)
- php获取表单信息的代码_php 表单数据的获取代码
- 带有Netflix Ribbon的Spring Cloud Rest Client-基础知识
- poj 3256(DFS)
- pytorch 保存模型出错, pickler.dump(obj) Error
- 曾经我对python shutil很迷茫,直到我看完这篇实操目录……
- IEEE Transactions Latex模板使用经验总结
- 原创:艰难的PCS7安装过程
- 广告管理系统-数据库表设计
- VoLTE呼叫SIP信令分析
- 《自控力》——[美]Kelly McGonigal
- Java学习之:如何将 java 程序打包成 .jar 文件
- 【车道线检测】霍夫变换(HoughLines)检测直线详解
- 【MyBatis】缓存——使查询变得快快快!
- 副业案例一:变现100万美元的国外网课销售漏斗模型案例
- Echarts动态地图实现
- 使用css绘制弹幕,实现弹幕效果的方法总结(css和canvas)
- 分众模式下的学员管理
- C语言小练习——约瑟夫环问题
热门文章
- 计算机容量单位换算题,计算机储存容量计算单位换算
- tdk磁材手册_TDK磁性材料市场.ppt
- 别老盯着5G,这些物联网应用用4G LTE技术足够了
- SHFileOperation删除文件夹
- mac 装java eclipse_Mac安装Eclipse教程
- Ubuntu 18.04安装Eclipse教程
- 香港内推 | 上海千象资产招聘海外CTA量化研究实习生
- 【刨根问底】解决我的世界启动,报错openGL版本不足的问题
- python读音有道-[Python]通过有道词典API获取单词发音MP3
- pytorch torchvision 各种版本whl下载地址