JavaWeb快速入门 软件分层模式

目录

一、软件分层模式:

         1.为什么需要分层

        2.软件设计中的分层模式

        3.分层

        4.三层架构:表示层(显示层、web层)、业务逻辑层、数据访问层

                UI(表现层): 

                BLL:

                DAL:

【面向接口编程】包:1.entity(实体包)、

2.utils   (连接数据库、加载驱动包、关闭服务)、

3.dao(与数据库交互增删改查等功能实现)包含接口impl(存放接口)、

4.biz|service  (业务逻辑层实现包)  包含接口impl(存放接口);

二、思维导图

 三、JavaWeb发展时期

       


一、软件分层模式:

         1.为什么需要分层

                业务处理的代码与JSP代码混在一起,不易于阅读,不易于代码维护,采用三层软件设计架构后,软件系统在可扩展性和可复用性方面得到极大提高。

        2.软件设计中的分层模式

                分层模式是最常见的一种架构模式;甚至可以说分层模式是很多架构模式的基础。

        3.分层

                    ①分层模式是将解决方案的组件分隔不同的层中(分工合作,细化)
                    ②每一层的组件应保持内聚性(部门之间常联系)
                    ③每一层都应与其下面的各层保持松耦合

                “高内聚   低耦合”
                            高内聚:每个模块做事情非常严谨,而且独立
                            低耦合:在某种情况下,模块与模块有联系。

        4.三层架构:表示层(显示层、web层)、业务逻辑层、数据访问层

                UI(表现层): 主要是指与用户交互的界面。用于接收用户输入的数据和显示处理后用户需要的数据,在 Web 应用程      序中,表示层一般以 JSP 文件、HTML文件为主;

                BLL:(业务逻辑层): UI层和DAL层之间的桥梁。实现业务逻辑。业务逻辑具体包含:验证、计算、业务规则等等 如数据有效性的检验. 业务辑描述等相关功能,业务逻辑层经常放在 service 包或 biz 包下,btz 是英文 buslness 的缩写,意思是 '业务逻      辑";

                DAL:(数据访问层): 与数据库打交道。主要实现对数据的增、删、改、查。将存储在数据库中的数据提交给业务层,同时将业务层处理的数据保存到数据库。(当然这些操作都是基于UI层的。用户的需求反映给界面(UI),UI反映给BLL,BLL反映给DAL,DAL进行数据的操作,操作后再一一返回,直到将用户所需数据反馈给用户)数据访问层通常放在 dao 包下,DAO 是      英文 Data Access Object 的缩写,意思是 "数据访问对象 ";

                1. 表示层 jsp+html; 

                2. 业务逻辑层 biz/service; 

                3. 数据库访问层 dao(访问数据库、文本文件、XML文件)。 

                Entity实体类不属于某层,三层都可以调用,主要用于封装数据。

【面向接口编程】包:1.entity(实体包)、2.utils   (连接数据库、加载驱动包、关闭服务)、3.dao(与数据库交互增删改查等功能实现)包含接口impl(存放接口)、4.biz|service  (业务逻辑层实现包)  包含接口impl(存放接口);

                示例如下:

 

 

二、思维导图

 
三、JavaWeb发展时期

        1.Javaweb经历了三个时期

                ①JSP Model1第一代

                JSP Model1是JavaWeb早期的模型,它适合小型Web项目,开发成本低!Model1第一代时期,服务器端只有JSP页面,所有的操作都在JSP页面中,连访问数据库的API也在JSP页面中完成。也就是说,所有的东西都耦合在一起,对后期的维护和扩展极为不利。

                ②JSP Model1第二代

                JSP Model1第二代有所改进,把业务逻辑的内容放到了JavaBean中,而JSP页面负责显示以及请求调度的工作。虽然第二代比第一代好了些,但还让JSP做了过多的工作,JSP中把视图工作和请求调度(控制器)的工作耦合在一起了。

                ③JSP Model2

                JSP Model2模式已经可以清晰的看到MVC完整的结构了。

                ·JSP:视图层,用来与用户打交道。负责接收用来的数据,以及显示数据给用户;

                ·Servlet:控制层,负责找到合适的模型对象来处理业务逻辑,转发到合适的视图;

                JavaBean:模型层,完成具体的业务工作,例如:开启、转账等。

 

                这就是javaweb经历的三个年代,JSP Model2适合多人合作开发大型的Web项目,各司其职,互不干涉,有利于开发中的分工,有利于组件的重用。但是,Web项目的开发难度加大,同时对开发人员的技术要求也提高了。

        2.JavaWeb经典三层框架

                我们常说的三层框架是由JavaWeb提出的,也就是说这是JavaWeb独有的!

                所谓三层是表述层(WEB层)、业务逻辑层(Business Logic),以及数据访问层(Data Access)。

                ·WEB层:包含JSP和Servlet等与WEB相关的内容;

                ·业务层:业务层中不包含JavaWeb API,它只关心业务逻辑;

                ·数据层:封装了对数据库的访问细节;

  注意,在业务层中不能出现JavaWeb API,例如request、response等。也就是说,业务层代码是可重用的,甚至可以应用到非Web环境中。业务层的每个方法可以理解成一个万能,例如转账业务方法。业务层依赖数据层,而Web层依赖业务层!

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaWeb是一种用Java语言来开发动态网页的技术栈。它包括了Servlet和JSP两个主要的技术组件。JavaWeb的开发速度很快,功能也很强大,并且具有跨平台的特点。 JavaWeb可以用来开发静态网页和动态网页。静态网页是指提供给所有人看的数据始终不会发生变化,而动态网页是指提供给所有人看的数据会随着时间和地点的不同而发生变化。大部分网站都属于动态网页。在Java,动态网页开发的技术统称为JavaWebJavaWeb采用B/S架构,即浏览器和服务器之间的交互。相比之下,C/S架构是客户端和服务器之间的交互。JavaWeb被广泛使用,因为它可以处理高并发、高性能和高可用性的问题,并且语法类似于ASP。 如果你想快速入门JavaWeb,你可以首先学习Servlet和JSP的基本语法和用法。Servlet是JavaWeb的核心组件,用于处理请求和响应。JSP则是一种在HTML嵌入Java代码的技术,可以方便地生成动态内容。你可以通过学习这两个组件的基础知识,了解JavaWeb的基本工作原理和开发流程。然后,你可以进一步学习JavaWeb框架,如Spring MVC和Struts,以提高开发效率和代码质量。还可以学习数据库连接和操作、前端技术等相关知识,以完善你的JavaWeb开发技能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [JavaWeb入门](https://blog.csdn.net/Massimo__JAVA/article/details/124496596)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值