一个项目中说系统分为表现层、控制层、逻辑层、DAO层和最终数据库五层架构 这具体是什么意思啊

网上有关“一个项目中说系统分为表现层、控制层、逻辑层、DAO层和最终数据库五层架构 这具体是什么意思啊”话题很是火热,小编也是针对一个项目中说系统分为表现层、控制层、逻辑层、DAO层和最终数据库五层架构 这具体是什么意思啊寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。

1、表现层:主要功能是显示数据和接受传输用户的数据,可以在为网站的系统运行提供交互式操作界面,表现层的应用方式比较常见,例如Windows窗体和Web页面。

2、控制层:将业务规则、数据访问、合法性校验等工作进行处理。通过COM/DCOM通讯与逻辑层建立连接。

3、逻辑层:将用户的输入信息进行甄别处理,分别保存。建立新的数据存储方式,在存储过程中对数据进行读取,将“商业逻辑”描述代码进行包含。

4、DAO层:主要是对非原始数据(数据库或者文本文件等存放数据的形式)的操作层,对数据库的操作,而不是数据,具体为业务逻辑层或控制层提供数据服务。

5、最终数据库:是数据库的主要操控系统,实现数据的增加、删除、修改、查询等操作。实际运行的过程中,最终数据库没有逻辑判断能力,为了实现代码编写的严谨性,提高代码阅读程度,一般软件开发人员会使用DAO层,保证数据处理功能。

扩展资料:

系统分为表现层、控制层、逻辑层、DAO层和最终数据库五层架构的优点是:

1、开发人员可以只关注整个结构中的其中某一层。

2、可以很容易的用新的实现来替换原有层次的实现。

3、可以降低层与层之间的依赖。

4、有利于标准化。

5、利于各层逻辑的复用。

6、结构更加的明确。

7、在后期维护的时候,极大地降低了维护成本和维护时间。

8、避免了表示层直接访问数据访问层,表示层只和业务逻辑层有联系,提高了数据安全性。

9、有利于系统的分散开发,每一个层可以由不同的人员来开发,只要遵循接口标准,利用相同的对象模型实体类就可以了,这样就可以大大提高系统的开发速度。

10、方便系统的移植,如果要把一个C/S的系统变成B/S系统,只要修改三层架构的表示层就可以了。业务逻辑层和数据访问层几乎不用修改就可以轻松的把系统移植到网络上。

11、项目结构更清楚,分工更明确,有利于后期的维护和升级。

架构的作用与示例

用户与架构(schema)分开,让数据库内各对象?再绑在某个用户账号上,可以解决SQL SERVER 2000及以前版本中“用户离开公司"问题,也就是在拥有该对象的用户离开公司,或离开该职务时,?必要大费周章地?改该用户所有的对象属于新的用户所有。另外,也可让 DBA 在安装某个套装软件时,设置该套装软件所用的数据库对象都属于某个特定的架构,容?区别。也就是说,在单一数据库内,?同部门或目的的对象,可以通过架构区分?同的对象命名原则与权限。

在 SQL Server 2005 /2008中,架构独立于创建它们的数据库用户而存在。可以在不更改架构名称的情况下转让架构的所有权。并且可以在架构中创建具有用户友好名称的对象,明确指示对象的功能。例如,除了 cus.app.entry.customEntry 外,您还可以创建名为 cus.app.manifest.customEntry 的架构。因为“manifest”不是用户,所以从数据库中删除用户后,无需更改此名称。这就简化了数据库管理员和开发人员的工作。

SQL Server 2005/2008 还引入了“默认架构”的概念,用于解析未使用其完全限定名称引用的对象的名称。在 SQL Server 2000 中,首先检查的是调用数据库用户所拥有的架构,然后是 DBO 拥有的架构。在 SQL Server 2005 /2008中,每个用户都有一个默认架构,用于指定服务器在解析对象的名称时将要搜索的第一个架构。可以使用 CREATE USER 和 ALTER USER 的 DEFAULT_SCHEMA 选项设置和更改默认架构。如果未定义 DEFAULT_SCHEMA,则数据库用户将把 DBO 作为其默认架构。

下面的显示SQL Server权限层次结构的图可能会给我们一个直观的认识:

SQL Server 2005/2008 Database Engine 管理着可以通过权限进行保护的实体的分层集合。这些实体称为“安全对象”。在安全对象中,最突出的是服务器和数据库,但可以在更细的级别上设置离散权限。SQL Server 通过验证主体是否已获得适当的权限来控制主体对安全对象执行的操作。

安全对象关系如下图:

下面举个具体的示例来说明以一下架构的作用。

--命令对架构进行操作

use master

go

setuser

go

--创建测试数据库

create database schTest

go

create login df with password='sj1234',default_database=schTest

create login xhl with password='sj1245',default_database=schTest

go

use schTest

go

-- 创建两个用户时没有指定属于哪个架构

create user df for login df

create user xhl for login xhl

-- 这个表没指定属于哪个架构属于默认DBO 架构

go

create table tb1 (姓名 varchar(8),性别 char(2))

go

--这个表就属于sch架构

create schema sch

go

create table sch.tb2(姓名 varchar(8),性别 char(2),年龄 int)

go

-- 赋予schTest这个用户查询sche架构中的对象的权限.

grant select on schema::sch to df

go

setuser 'df' --切换用户df

select * from tb2

-- 此时报告"对象名无效" 是因为没有指定tb2的架构,系统默认为dbo,而我们的tb2属于sch架构.

--带上架构名称,就可以查询了

go

select * from sch.tb2

go

setuser -- 切换到sa

---切换到xhl

setuser 'xhl'

--不能查询,是因为没有权限

select * from sch.tb2

go

setuser --切换sa

--给df用户赋默认架构

alter user df with default_schema=sch

go

setuser 'df' --切换df

-- 此时不需要指定sch 也可以了,如果架构中还有其他对象,也可以查询

select * from tb2

go

setuser --切换sa

--创建第三张测试表,同样的是sch架构下

create table sch.tb3 (id int,uname varchar(8))

go

--切换用户df

setuser 'df'

---可以进行查询

select * from tb3

go

---但是无法进行数据插入,因为没有插入权限

insert into tb3 values (1,'abcde') --拒绝了insert权限

go

setuser

--赋插入权限

grant insert on schema::sch to df

--切换用户df

setuser 'df'

go

---可以进行数据插入

insert into tb3 values (1,'abcde') --OK!

---查询结果

select * from tb3

GO

Grant alter on schema::sch to df -- 使schTest 这个用户对所有的架构都有可更改的能力。

--错误

--无法对sa、dbo、实体所有者、information_schema、sys 或您自己授予、拒绝或撤消权限。

GO

Use master

go

Grant control server to df -- 使schTest这个用户能够控制服务器。

--错误

--无法对sa、dbo、实体所有者、information_schema、sys 或您自己授予、拒绝或撤消权限。

setuser

go

use schtest

go

--创建架构sch1

create schema sch1

go

-- 修改对象的架构tb2表的架构由sch 转移到sch1

alter schema sch1 transfer sch.tb2

go

--创建一个新用户,同时指定默认schema,默认属于DBO

create login yhy with password='sj1234',default_database=master

GO

use schTest

GO

create user yhy for login yhy with default_schema=sch --属于sch

--切换用户yhy

setuser 'yhy'

--查询表,对象名'tb2' 无效。

select * from tb2

go

setuser

--赋架构权限

grant select on schema::sch1 to yhy

--切换用户yhy

setuser 'yhy'

go

select * from tb2 ---还是无效,因为不在同一个schema

go

setuser

go

alter user yhy with default_schema=sch1 --更改yhy的默认架构

GO

--由于yhy不是当前用户,所以无法进行查询

select * from tb2

--显示当前用户

GO

select user

GO

--切换用户yhy

setuser 'yhy'

-- 此时就可以进行查询了,如果架构中还有其他对象,也可以查询

go

select * from tb2

--显示当前用户

select user

go

--切换用户

Setuser

--切换用户为df

setuser 'df'

-- 此时由于tb2的架构由sch变为了sch1,所以df就不可以查询tb2了

go

--查询报错

select * from tb2

--显示当前用户

select user

go

setuser

go

use master

go

---删除用户

drop user df

drop user xhl

drop user yhy

---删除登录名

drop login df

drop login yhy

drop login xhl

--删除数据库

drop database schTest

关于“一个项目中说系统分为表现层、控制层、逻辑层、DAO层和最终数据库五层架构 这具体是什么意思啊”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!

本文来自作者[天容]投稿,不代表盛龙号立场,如若转载,请注明出处:https://www.snlon.net/sn/15749.html

(97)

文章推荐

  • 事业编辞职后社保怎么处理

    网上有关“事业编辞职后社保怎么处理”话题很是火热,小编也是针对事业编辞职后社保怎么处理寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。一是保留机关事业身份。要凭辞职文件、人事代理协议、本人身份证前往社保中心办理。退休时可以享受辞职时机关身份等级待遇。二是转为个

    2025年09月15日
    130318
  • 三国时期拥有过目不忘之能的张松为何不得重用?

    网上有关“三国时期拥有过目不忘之能的张松为何不得重用?”话题很是火热,小编也是针对三国时期拥有过目不忘之能的张松为何不得重用?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。三国张松:史上唯一过目不忘之人却不堪重用在三国时期有许许多多的风云人物,大放异彩。其中

    2025年09月18日
    124304
  • 关于使用L7815制作直流稳压电源的问题

    网上有关“关于使用L7815制作直流稳压电源的问题”话题很是火热,小编也是针对关于使用L7815制作直流稳压电源的问题寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。1、直流稳压电源安装(1)安装前的准备工作①检查印刷板上有无质量问题;②全部元器件安装

    2025年09月23日
    113322
  • 北京大兴到延庆康熙草原开车怎么走

    网上有关“北京大兴到延庆康熙草原开车怎么走”话题很是火热,小编也是针对北京大兴到延庆康熙草原开车怎么走寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。北京大兴到延庆康西草原?路线驾车路线:全程约118.1公里起点:大兴区1.大兴区内驾车方案1)从起点向正东

    2025年09月27日
    106308
  • 医保帐户被冻结注资款可以入帐-

    网上有关“医保帐户被冻结注资款可以入帐?”话题很是火热,小编也是针对医保帐户被冻结注资款可以入帐?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。现在的社保卡是一卡两用的,既有银行的存取款功能,又可以去医院买药使用医保账户,这两个账户属于两个独立的账户,所以如

    2025年09月27日
    108317
  • 幸福的婚姻需要什么的条件?

    网上有关“幸福的婚姻需要什么的条件?”话题很是火热,小编也是针对幸福的婚姻需要什么的条件?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。一、包容理解。一段好的婚姻,需要两个人互相包容理解。因为每个人生活方式不同生活在一起,总是会有不同的生活状态。婚姻离不开两

    2025年10月08日
    113315
  • 防止生锈的方法有哪四种

    网上有关“防止生锈的方法有哪四种”话题很是火热,小编也是针对防止生锈的方法有哪四种寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。常用的防止铁生锈的方法有:(1)组成合金,以改变铁内部的组织结构.例如把铬、镍等金属加入普通钢里制成不锈钢,就大大地增加了钢铁制品

    2025年10月17日
    100301
  • 我要结婚了怎么发表说说告诉朋友

    网上有关“我要结婚了怎么发表说说告诉朋友”话题很是火热,小编也是针对我要结婚了怎么发表说说告诉朋友寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。1.最后的狂欢,明个起,做一个贤妻良母,煮饭、做菜、带孩子,但是,今晚,我要嗨起来!!2.一声老婆,等了很多年

    2025年10月19日
    105318
  • 65mn弹簧钢材质及特性

    网上有关“65mn弹簧钢材质及特性”话题很是火热,小编也是针对65mn弹簧钢材质及特性寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。65mn弹簧钢是生活中常用的一种弹簧钢。由于其具有很好的硬度,淬透性好,脱碳倾向少,价格也相对低廉,切削性能等优点点,通常

    2025年10月22日
    105310
  • 适合女孩子的工作

    网上有关“适合女孩子的工作”话题很是火热,小编也是针对适合女孩子的工作寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。适合女孩子的工作适合女孩子的工作,作为女生,找一份适合自己的稳定工作,有稳定的收入才是王道,需要掌握

    2025年10月29日
    77321
  • 必看教程“雀神广东麻将开挂神器下载”其实确实有挂

    亲,雀神广东麻将开挂神器下载这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总是好牌,而且好像能看到其他人的牌一样。所以很多小伙伴就怀疑这款游戏是不是有挂,实际上这款游戏确实是有挂的通过添加客服微:本司针对手游进行匹配,选择我们的四大理由:1、软

    2025年11月14日
    64317
  • 养南美虾怎么样投料

    网上有关“养南美虾怎么样投料”话题很是火热,小编也是针对养南美虾怎么样投料寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。南美白对虾肉质鲜美,加工出肉率可高达67%,适温范围广,可在18-32℃生长,适盐范围也广,可在盐度1-40‰条件下生长,是一种优良的淡化

    2025年12月18日
    32312

发表回复

本站作者才能评论

评论列表(3条)

  • 天容的头像
    天容 2025年10月25日

    我是盛龙号的签约作者“天容”

  • 天容
    天容 2025年10月25日

    本文概览:网上有关“一个项目中说系统分为表现层、控制层、逻辑层、DAO层和最终数据库五层架构 这具体是什么意思啊”话题很是火热,小编也是针对一个项目中说系统分为表现层、控制层、逻辑层、D...

  • 天容
    用户102510 2025年10月25日

    文章不错《一个项目中说系统分为表现层、控制层、逻辑层、DAO层和最终数据库五层架构 这具体是什么意思啊》内容很有帮助