菜鸟学飞-初识三层架构

刚刚看完传智播客关于.net三层架构的视频

●  c#是面向对象的语言,则c#操作的是对象。

● 三层架构是一种思想:把从【数据库读取】-到-【展现】的过程分为三个层来处理。

  数据访问层(DAL:Data   Access   Layer):负责所有关于数据库操作的事情,离开了这个层就不能再出现任何和数据相关的操作,都只能是对【对象】的操作。

  业务逻辑层(BLL:Business   Logic   Layer):负责把从数据层得到的数据(视图、字符串、数字等),按数据模型封装为一个【对象】,对象的属性存储数据。

  表现层(UI:User Interface):操作逻辑层的对象进行,把对象中的数据展现给前台界面。

  扩展:

  数据模型(model ):创建数据对象模型类,一个模型类对应一张表,一般该模型只有属性,并且属性一一对象表的字段。

  公共类(common):存放公共的类。

● 除了UI层是WEB(或者窗体)应用程序,其他层都是一个单独的程序集,各个层根据需要相互引用。严格的分层是:表现层只能引用逻辑层,不能引用数据层,他们之间通过业务逻辑层进行沟通,这就是分层。

●  三层最最重要的意义是:

  把数据封装成对象,使得整个过程是完成面向对象的去操作,不是对数据进行操作。

  更好的维护性:每个层的修改都不会对其他层产生任何影响。

●  三层操作流程:

  数据层类A,逻辑层类B,表现层类C,数据模型M。

    C调用B,传入SQL语句,根据返回的M,按照需求把M的属性值读取展示。------操作的是B对和M对象

    B调用A,传入SQL语句,根据返回的数据调用M,把数据赋值给M的属性,返回M。------操作的是A对和M对象

    A根据SQL语句操作数据库,返回数据。------操作的是ADO.NET的各个对象

时间: 2024-10-16 02:27:41

菜鸟学飞-初识三层架构的相关文章

初识三层架构

三层是建立在面向对象的基础上设计的,分层的最高原则是高内聚,低耦合.三层架构将数据层.应用层和业务层分离,业务层通过应用层访问数据库,保护数据安全,利于负载平衡,提高运行效率,方便构建不同网络环境下的分布式应用. 1.三层架构概述 物理分类:显示层.业务逻辑层.数据层 逻辑分类:UI.BLL+DAL.DB 2.什么情况下使用三层架构?    业务复杂,需要独立数据存储. 3.三层的作用 3.1.显示层 UI的作用:向用户展现特定的业务数据:采集用户的输入信息和操作. 3.2.业务逻辑层 BLL的

三层架构介绍及线程与进程的关系

1.初识三层架构(其实就是吧同种类的全部放到一起) 1).用户交互 2).逻辑处理 3).数据存储 2.多线程与多进程 进程:是操作系统自己派生出来的. 线程:是由进程派生出来的. 1)一个程序至少有一个进程,一个进程至少有一个线程. 2) 线程的划分尺度小于进程,使得多线程程序的并发性高. 3) 另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率. 4) 线程在执行过程中与进程还是有区别的.每个独立的线程有一个程序运行的入口.顺序执行序列和程序的出口.

三层架构(二)——为什么要用三层架构?

二.为什么要用三层架构? 1.分析 层次结构在现实社会中随处可见.记得有个笑话讲有个村长得意的向他的老婆吹牛:"全中国比我官大的只有四个人,乡长.县长.省长和国务院总理",这个笑话体现了真实社会的分层现象,社会人群会分层,公司管理人员结构也会分层, 楼房是分层的,甚至做包子的笼屉也是分层的,虽然分层的目的各有不同,但都是为了解决某一问题而产生的,所以分层架构是为了解决某一问题而产生的解决方案. 社会分工的优势:让适合的人做自己最擅长的事情,缩短劳动时间,提高劳动效率.人尽其才,物尽其用

三层架构初识和搭建

一.是什么? 1.表现层(UI):展现给用户的界面,用户在使用一个系统的时候他的所见所得.主要表示Web或WinForm方式,对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问.如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务. 2.业务逻辑层(BLL):针对具体问题的操作,主要负责对数据层的操作,对数据业务逻辑处理. 3.数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添.删除.修改.查找等具体为业务逻辑层或表示层提供数据服务. 二.为什么?

事务管理在三层架构中应用以及使用ThreadLocal再次重构

本篇将详细讲解如何正确地在实际开发中编写事务处理操作,以及在事务处理的过程中使用ThreadLocal的方法. 在前面两篇博客中已经详细地介绍和学习了DbUtils这个Apache的工具类,那么在本篇中将全部使用DbUtils来编写我们的代码,简化操作嘛,由于本篇主要讲解事务,因此如果不懂事务,可以先看之前的博客<使用JDBC进行数据库的事务操作(1)>和<使用JDBC进行数据库的事务操作(2)>. 在博客<使用JDBC进行数据库的事务操作(2)>中我们已经学习了使用J

合作开发三层架构版机房中的一些工具软件

一,EA 关于EA的使用,以前在http://blog.csdn.net/lhc1105/article/details/38128513 .真心感觉不错. 二,动软代码生成器 这个小东西主要因为是中文的,用起来感觉比EA上手,可以进行一些简单的操作:比如: 1,为数据库自动生成常用存储过程,也可以将自动生成的存储过程导出,交给D层的开发人员复制粘贴使用,减少工作量. 2,导出数据库设计文档,不过这个文档有点儿简单,要自己完善下. 3,生成三层架构的主体代码: 如图,连带有工厂模式的代码都可以生

三层架构分析

三层一般分为两类:物理上的三层和逻辑上的三层架构:物理三层架构是以逻辑的三层架构为基础的,假设没有了逻辑的三层.就根本谈不上物理三层架构的部署. 什么是物理三层架构呢? 从简单了说就是每一层都分别做成一个组件.如业务逻辑组件,业务实体组件,数据訪问组件等.在到复杂一些就是构建分布式系统,比如将业务逻辑层与数据訪问分别部署在不同的server上. 我们这里讲的主要是逻辑上的三层架构. 三层基础知识 在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构. 微软推荐的分层式结构一般分为三层,

MVC和三层架构的比较

以前涉及到.NET做项目,脑袋里面只有一个概念,那就是三层,最近学习了一种新的架构思想,那就是ASP.NET MVC+EF+EasyUI,我们的项目已经进行了一半了,对这个架构算是有了初步的认识.这篇博文主要是笔者对MVC和三层架构的一些理解. MVC设计模式  VS  三层架构 一.概念不同 三层架构是一个分层式的软件体系架构设计,它可适用于任何一个项目. MVC是一个设计模式,它是根据项目的具体需求来决定是否适用于该项目. 那么两者有什么不同呢? 首先,当我们接手一个项目时,要设计软件的架构

MFC原创:三层架构01(人事管理系统)DAL

VC++/MFC Window编程原创教程文件夹 C++课程设计来着.但还没学过数据,也还没理解过三层架构,就把这个作业深化点来做了.尽管要做的这个人事管理系统看起来是挺简单的,无非就是处理员工信息.但事情就是那样,仅仅有动手了才知道什么叫做现实.     一開始是没想要用三层架构的,我们小组人员能力參差不齐,那就仅仅能从控制台(黑窗体)做起.后来我想做三层架构的时候,发现这是对的.从网上理解到的资料:三层有3层:表现层(UI).业务逻辑层(BLL).数据訪问层(DAL).最好是从逻辑层做起,而