MVC架构模式和三层架构的关系,SSM框架各个框架作用

目录

  • 一、MVC架构模式:
  • 二、三层架构:
  • 三、什么是SSM框架:

一、MVC架构模式:

MVC架构模式和三层架构的关系,SSM框架各个框架作用_第1张图片
其中M又分为:业务逻辑(Servlet)、访问数据库(Dao)。
MVC架构模式和三层架构的关系,SSM框架各个框架作用_第2张图片

  • 理解MVC和三层架构的关系:
    • MVC中的V和C是三层架构中的“表示层”,M是“业务逻辑层”和“数据访问层(持久化层)”

二、三层架构:

MVC架构模式和三层架构的关系,SSM框架各个框架作用_第3张图片

  1. 三层架构:
    • 表示层:用来接收客户端的输入,调用业务逻辑层进行功能处理,返回结果给客户端.过去的servlet就是表示层的功能。
    • 业务逻辑层:用来进行整个项目的业务逻辑处理,向上为界面层提供处理结果,向下问数据访问层要数据。
    • 数据访问层(持久化层):专门用来进行数据库的增删改查操作,向上为业务逻辑层提供数据。
  2. 三层的处理请求的交互:
  • 客户端<—>界面层<—>业务逻辑层<—>数据访问层<—>数据库。
  1. 为什么要使用三层架构:
    • 结构清晰、耦合度低, 各层分工明确。
    • 可维护性高,可扩展性高。
    • 有利于标准化。
    • 开发人员可以只关注整个结构中的其中某一层的功能实现。
    • 有利于各层逻辑的复用。
  2. 三层架构项目实例:
  • 项目结构!!!
    MVC架构模式和三层架构的关系,SSM框架各个框架作用_第4张图片

  • 表示层

UsersController类:

package org.example.controller;

import org.example.service.UsersService;
import org.example.service.UsersServiceImpl;

/**
 * 表示层
 */
public class UsersController {
    //表示层中必须要有业务逻辑层对象
    UsersService usersService = new UsersServiceImpl();//面向接口编程
    public void control(){
        usersService.service();
    }
}

  • 业务逻辑层

UsersService接口:

package org.example.service;

public interface UsersService {
    void service();
}

UsersServiceImpl实现类:

package org.example.service;

import org.example.dao.UsersMapper;
import org.example.dao.UsersMapperImpl;

/**
 * 业务逻辑层
 */
public class UsersServiceImpl implements UsersService{
    //业务逻辑层必须要有数据访问层对象
    UsersMapper usersMapper = new UsersMapperImpl();//面向接口编程
    @Override
    public void service() {
        usersMapper.insert();
    }
}

  • 数据访问层

UsersMapper接口:

package org.example.dao;

public interface UsersMapper {
    int insert();
}

UsersMapperImpl实现类:

package org.example.dao;

/**
 * 数据访问层
 */
public class UsersMapperImpl implements UsersMapper{
    @Override
    public int insert() {
        System.out.println("用户增加成功");
        return 1;
    }
}

三、什么是SSM框架:

MyBatis 框架:
MyBatis 是一个优秀的基于 java 的持久层框架,内部封装了 jdbc,开发者只需要关注 sql 语句本身,而不需要处理加载驱动、创建连接、创建 statement、关闭连接,资源等繁杂的过程。
MyBatis 通过 xml 或注解两种方式将要执行的各种 sql 语句配置起来,并通过 java 对象和 sql 的动态参数进行映射生成最终执行的 sql 语句,最后由 mybatis 框架执行 sql 并将结果映射为 java 对象并返回。

Mybatis框架优化了三层架构中的数据访问层。

Spring 框架:
Spring 框架为了解决软件开发的复杂性而创建的。Spring 使用的是基本的 JavaBean 来完成以前非常复杂的企业级开发。Spring 解决了业务对象,功能模块之间的耦合,不仅在 javase,web 中使用, 大部分 Java 应用都可以从 Spring 中受益。
Spring 是一个轻量级控制反转(IoC)和面向切面(AOP)的容器。

Spring框架整合了SpringMVC和Mybatis,优化了SpringMVC和Mybatis框架的使用,使得SpringMVC和Mybatis框架使用更加简洁。

SpringMVC 框架:
Spring MVC 属于 SpringFrameWork 3.0 版本加入的一个模块,为 Spring 框架提供了构建 Web 应用程序的能力。现在可以 Spring 框架提供的 SpringMVC 模块实现 web 应用开发,在 web 项目中可以无缝使用 Spring 和 Spring MVC 框架。

SpringMVC框架优化了MVC架构中的controller控制器。

你可能感兴趣的:(设计模式,java,servlet)