学而止步之java后台三层架构是干嘛呢?

1.后台三层架构基础知识梳理

  1. 后台三层架构的知识梳理

    所谓的三层开发就是将整个业务应用划分为表现层,业务逻辑层,数据访问层,这样有利于系统的开发,维护,部署和拓展

  2. 后台三层架构的目的是

    三层架构的划分实现了"高内聚,低耦合",采用**"分而治之"的算法思想,把问题划分开来解决,易于控制、拓展和资源的分配**

  3. 后台三层架构各个职责是

    表现层/表示层(servlet):负责直接跟用户进行交互,一般是指系统的界面,用于数据录入、数据显示等。意味着只做与外观显示相关的工作,不属于它的工作不用做。

    业务层/服务层(Service):用于做一些有效性验证的工作,以更好地保证程序运行的健壮性。如完成数据添加、修改和查询业务;不允许指定的文本框中输入空字符串;数据格式是否正确及数据类型验证;用户权限的合法性判断等。通过以上的诸多判断以决定是否将操作继续向后传递,尽量保证程序的正常运行。文件名常含有service

    持久层/数据访问层(data access object):顾名思义,就是用于专门跟数据库进行交互,执行数据的添加、删除、修改和显示等。需要强调的是,所有的数据对象只在这一层被引用,如System.Data.SqlClient等,除数据层之外的任何地方都不应该出现这样的引用。文件名常含有Dao

2.为什么使用三层架构

  1. 对于一个简单的应用程序来说,在代码量不是很多的情况下,单层架构或二层架构开发完全够用,没有必要将其复杂化,如果将一个复杂的大型系统设计为单层架构或二层架构,这样的设计则会存在很严重的缺陷。下面会具体介绍,分层开发其实是为大型系统服务的。
  2. 在开发过程中出现相似的功能时,初级程序人员经常会复制代码,那么同样的代码为什么要写那么多次?这样不但使程序变得冗长,也不利于维护,一个小小的修改或许会涉及很多页面,经常会导致异常的产生,使程序不能正常运行。最主要的是面向对象的思想没有得到丝毫的体现,打着面向对象的幌子却依然走着面向过程的道路
    3. 针对这样的问题,初级程序人员应学会将程序中一些公用的处理程序写成公共方法,封装在类中,供其他程序调用。例如写一个数据操作类,对数据操作进行合理封装。在数据库操作过程中,只要类中的相应方法(数据添加、修改、查询等)可以完成特定的数据操作,这就是数据访问层,不用每次操作数据库时都写那些重复性的数据库操作代码。在新的应用开发中,数据访问层可以直接拿来用。面向对象的三大特性之一的封装性在这里得到了很好的体现。采用面向对象的方法,可使代码量较以前有很大的减少,而且修改的时候也比较方便,实现了代码的重用性。

3.使用三层架构开发的优点

  1. 从开发角度和应用角度来看,三层架构比二层架构或单层架构有更大的优势。三层架构适合团队开发,每个人可以有不同的分工,协同工作能使效率倍增。开发二层或单层应用时,每个开发人员都应对系统有较深的理解,对人员能力要求很高,而开发三层应用时,则可以结合多方面的人才,只需少数人对系统有全面的了解即可,在一定程度上降低了开发的难度。
  2. 三层架构可以更好地支持分布式计算环境。逻辑层的应用程序可以在多个机器上运行,充分利用网络的计算功能。分布式计算的潜力巨大,远比升级CPU有效。美国人曾利用分布式计算进行解密,几个月就破解了据称永远都破解不了的密码。
  3. 三层架构的最大优点是它的安全性。用户只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。

01.java后台三层架构相关推荐

  1. Java使用三层架构、JDBC连接数据库完成《试题信息管理系统》

    开发基于控制台的试题信息管理系统.具体要求如下: (1)显示试题信息管理系统主菜单,如图-1所示,包括: 1)列出所有试题信息 2)按科目查询 3)按题干模糊查询 4)添加试题 5)删除试题 6)退出 ...

  2. Java SpringMVC三层架构及执行流程

    一.SpringMVC三层架构 Java SpringMVC的工程结构一般来说分为三层,自下而上是Modle层(模型,数据访问层).Cotroller层(控制,逻辑控制层).View层(视图,页面显示 ...

  3. java ssh三层架构_SSH和三层架构的MVC模式的对应关系

    1.MVC(Model-View-Controller)设计模式: 首先让我们了解下MVC(Model-View-Controller)的概念: MVC全名是Model View Controller ...

  4. java ee 三层架构_JavaEE的三层架构

    ## JavaEE的三层架构 ## 1.JavaEE架构图 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM ...

  5. 对Java的三层架构的理解

    什么是三层架构? 三层架构是一个成熟的软件应用程序 架构,它将应用程序组织到三个逻辑和物理计算层中: 表示层或用户界面:用于处理数据的应用程序层:以及用于存储和管理应用程序关联数据的数据层. 三层架构 ...

  6. java的三层架构是什么_java中的三层架构

    三层架构:将程序中所有的类按照功能类别划分为3个层次(将所有类用于3个不同包存放) 实体层:entity,该包下存放所有的实体类(数据类,只有属性(和数据库字段对应的属性)和属性的封装(setter/ ...

  7. Java开发三层架构

    三层架构:将程序中所有的类按照功能类别划分为3个层次(将所有类用于3个不同包存放) 实体层:entity,该包下存放所有的实体类(数据类,只有属性(和数据库字段对应的属性)和属性的封装(setter/ ...

  8. java ee 三层架构_JavaEE——三层架构模式介绍

    声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权:凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记. 三层架构模式介绍 三层架构模式: 三层架构(3-tier a ...

  9. java框架三层架构是_MVC框架模式和Javaweb经典三层架构

    一.MVC设计模式 首先我们需要知道MVC模式并不是javaweb项目中独有的,MVC是一种软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Co ...

最新文章

  1. wxpython分割窗口_wxPython实现分隔窗口
  2. Nature综述:进化病毒毒力的系统发育基因组学
  3. CNN网络结构的发展:从LeNet到EfficientNet
  4. Exchange Server 2013之邮件存档配置
  5. sublime text使用小技巧
  6. Spark _18 _Shuffle文件寻址
  7. 终于等到了scilab 5.1.1
  8. Ext2、Ext3、Ext4的区别
  9. 二阶有源低通滤波器幅频特性
  10. 【MATLAB数据分析】01数据的均值、变异度、偏度和峰度
  11. Linux Centos 7移动电信双线 策略路由
  12. linux认证ppt的图片,linux用户、组和身份认证-课件(PPT-精).ppt
  13. 软件民工的幸福生活3
  14. MT7620a-Openwrt-Frp
  15. 新人主播直播人气热度底,往往是忽略了这几点。
  16. 游戏里面的英雄是怎么做的?
  17. 一文看懂怎么用 Python 做数据分析
  18. 关于MSELoss、BCELoss、CELoss损失函数求导的推导
  19. linux ll命令是什么
  20. open小将java下载_OPEN YOUR DREAM_OPEN小将_高音质在线试听_OPEN YOUR DREAM歌词|歌曲下载_酷狗音乐...

热门文章

  1. tf::Stamped<tf::Pose>
  2. java kafka消息的发送与接收
  3. 餐饮水单打印软件_火锅店连锁企业使用哪款生鲜管理系统软件比较好呢?
  4. 电脑开机无反应 不显示BIOS 硬件没问题
  5. NwafuOJ—C语言实习题四数据顺序调整
  6. 【Axure视频教程】中继器表格——设置表格内容
  7. ubuntu安装华为云桌面---cloudclient
  8. wdr7500 虚拟服务器,TP-Link TL-WDR7500路由器端口转发怎么设置
  9. openwrt用WEB刷固件型号不对问题强行处理
  10. 浅尝辄止SCOI2018反思