目录
什么是系统架构
即整合应用系统程序大的结构,经常提到的系统架构:三层架构、mvc;两者既有区别又有联系,但目的都是解耦。
什么是三层架构
三层架构=视图层+业务逻辑层+数据访问层
视图层 View 用于接收用户提交请求的代码
业务逻辑层 Service 系统的业务逻辑
数据访问层 Dao 直接操作数据库的代码
为了更好的降低各层间的耦合度,在三层架构程序设计中,采用面向抽象编程。即上层对下层的调用,是通过接口实现的。而下层对上层的真正服务提供者,是下层接口的实现类。服务标准(接口)是相同的,服务提供者(实现类)可以更换。这就实现了层间解耦合。
只要包含了视图层、应用层、数据访问层就是三层架构。
开发中,业务才是核心,技术辅助业务
简单业务 只开启一个事务
普通业务 开启三个事务
复杂业务 开启七个事务
什么是MVC模式
MVC=Model+View+Controller(模型+视图+控制器)
模型:数据模型 entity 业务模型 service
视图 jsp:展示页面
控制器 sevlet:处理用户请求的
MVC工作流程
- 用户通过 View 页面向服务端提出请求,可以是表单请求、超链接请求、AJAX 请求等
- 服务端 Controller 控制器接收到请求后对请求进行解析,找到相应的 Model 对用户请求进行处理
- Model 处理后,将处理结果再交给 Controller
- Controller 在接到处理结果后,根据处理结果找到要作为向客户端发回的响应 View 页面。页面经渲染(数据填充)后,再发送给客户端。
三层架构与MVC
高内聚低耦合
一个类只做一种事
一个方法只做一件事
写只写一次
面向对象设计原则--重构原则
事不过三,三则重构(提取方法、类)
三层架构与MVC练习
1.创建文件夹login-demo,用idea打开
2.初始操作
- 创建pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>login-demo</artifactId>
<version>1.0.0-SNAPSHOT</version>