强烈推荐几种经典的系统开发模型

989 阅读6分钟

小知识,大挑战!本文正在参与“  程序员必备小知识  ”创作活动

本文同时参与 「掘力星计划」  ,赢取创作大礼包,挑战创作激励金

👨‍🎓作者:Java学术趴

🏦仓库:GithubGitee

✏️博客:CSDN掘金InfoQ云+社区

💌公众号:Java学术趴

🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。

🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。微信搜索公众号Java学术趴联系小编。

☠️每日毒鸡汤:坚持自己的梦想,即使没有翅膀也能飞翔。

👋大家好!我是你们的老朋友Java学术趴。今天给大家分享一些开发中常用的开发模型。这些模型从复杂到简单进行了一步一步的简化,让开发代码之间的耦合度更加低、代码利用率更高。

系统开发模型

  • 系统开发模型,即系统架构,是指整合应用系统程序大的结构。经常提到的系统结构有两两种:三层架构和MVC。 这两种结构既有区别又有联系。但是这两种结构的是使用,都是为了降低系统模块间的耦合度。
  • 传统的javaWeb项目的系统开发模型大体经理了四个阶段:纯JSP、JSP+JavaBean的Model1、MVC的Model2、MVC+三层架构。

1. JSP开发模型

  • ”纯JSP“开发模型中将所有业务逻辑、数据显示功能都由JSP页面完成。其缺点是很明显的:JSP页面中的代码结构很乱、显示功能与业务代码没有划分开,维护与升级相当麻烦...
  • 此时JSP既用来处理业务,又用来显示内容。
  • 这种模型不是只存在一个JSP,存在多个JSP之间的跳转。

image-20211019141529639

2. JSP+JavaBean的Model1

  • JSP大部分用来显示内容,但是还有一部分是用来处理业务,JSP页面还承担着大量的请求解析、业务处理功能。
  • JavabBean(就是一个Java类)用来处理业务。将JSP中的业务从JSP中分走了一部分。
  • 这里也不是只存在一个JSP与一个JavaBean,也是多个之间的跳转。

2.1 JavaBean

  • JaveBean根据具体的概念的不同,可以分为两大类:广义JavaBean与JavaBean。

所谓广义JavaBean,就是指一般意义上的Java类,其主要功能有两个:承载数据与业务处理。所以广义的JavaBean又分为两类:数据承载Bean与业务逻辑承载Bean。

  • 数据承载Bean就是指实体类,专门用于承载业务数据的,如Student、User等
  • 业务处理Bean则是指Servlet或Dao对象,专门用于处理用户提交请求的。

侠义JavaBean,是指符合SUN公司提出的“JavaBean”规范的Java类。 JaveBean规范规范,满足以下四点的Java类,称为JavaBean:

  • 该类需要是公共的,即public class...
  • 该类需要实现 Serializable(序列化)接口。
  • 该类需要具备无参构造器,无论是默认的,还是显示定义的。
  • 该类如有成员变量,这些成员变量必须是私有的,且需要提供这些私有成员变量的公共getter与setter。

在实际项目中,实体类一般会被定义为侠义的JaveBean。即,广义的JaveBean的数据承载Bean一般会被定义为满足“JavaBean规范”的侠义JavaBean。

3.MVC开发模式(MVC的Model2)

注意:model2指的就是MVC开发模式

MVC,即 Model模型、View视图、Controller控制器。

image-20211019160400812

  • view:视图,为用户提供使用界面,与用户直接进行交互。
  • Model:模型,承载数据,并对用户提交请求进行计算的模块。其分为两类:一类成为数据承载Bean,一类称为业务处理Bean。所谓数据承载Bean是指实体类,专门用户承载业务数据的,如Student、User等。而业务处理Bean则是指Servlet或Dao对象,专门用于处理用户提交请求的。
  • Controller:控制器。用于将用户请求转发给相应的的Model进行处理,并根据Model的计算结果向用户提供相应响应。

4. 三层架构

  • 三层架构就是为了符合“高内聚,低耦合”思想,把各个功能模块划分为表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL)三层架构,各层之间采用接口相互访问,并通过对象模型的实体类(Model)作为数据传递的载体,不同的对象模型的实体类一般对应于数据库的不同表,实体类的属性与数据库表的字段名一致

三层架构:视图层View、服务层Service、持久层Dao。

  • View层:表现层、视图层,对于Web开发,也称为web层。 用于接收用户提交请求的代码在这里编写。
  • Service层:业务层、逻辑层。 系统的业务和逻辑主要在这个完成。
  • Dao层:持久层、数据访问层。 直接操作数据库的代码在这里编写。DAO,即Data Access Object,数据访问对象。

为了更好的降低各层之间的耦合度,在三层架构程序设计中,采用面向抽象的编程。View为上层,Service为下层。即上层对下层的调用是通过接口实现的。而下层对上层的真正服务提供者,是下层接口实现类。服务标准(接口)是相同。

5.MVC+三层架构

MVC+三层架构的开发模型,是=传统的JaveWeb项目中最常用开发模型。

所谓”MVC+三层架构“的开发模型,主要是指MVC的业务处理Model分为了两层:Service层与Dao层,分别用于处理业务逻辑与持久化操作。

  • 蓝色是三层架构,紫色的是MVC,将MVC的Model层分为:Service与Dao。

6.sms学生系统管理系统

  • 这个项目在此处没有编写,有需要的小伙伴通过以下方式咨询我。 以上项目的源代码,点击星球🌍进行免费获取 星球(Github地址)如果没有Github的小伙伴儿。可以搜索🔍微信公众号:Java学术趴,📭发送sms,免费给发给大家项目源码,代码是经过小编亲自测试🔧的,绝对可靠,免费拿去使用。

-------💘看完的大佬们可以关注一下小编,会一直更新小技巧,免费分享给大家呦!!!💝-----