Javaweb的MVC模式和三层架构(框架了解)

Javaweb的MVC模式和三层架构(框架了解)

1.前言

学习Javaweb需要了解MVC的开发模式和三层架构,这对于理清思路和写好代码十分有帮助。今后正式开发还需要使用框架,这些都是有必要了解的。先在脑海中形成Javaweb开发的框架,再逐步去深入学习。

2.MVC模式

  • M是model,模型,用于处理业务
  • V是View,视图,用于页面展示
  • C是Controller,控制器,用于处理请求,调用模型和视图

举个例子,当我们简单的写一个用户登录界面。我们需要获取用户输入的账户和密码然后进行数据库查询,如果比对失败那就显示登录失败,反之则登录成功。实现这些需要Servlet去获取请求信息再进行数据库的查询,最后还要通过JSP(当然JSP已经较少使用了)去响应,实现界面。那显然Servlet就充当了控制器的身份,而JSP自然就是视图,而数据表对应的用户类(JavaBean)就是模型。

MVC的概念将此类开发分为三块,降低耦合,各司其职,有利分工协作,甚至可以将各块的组件重用。

3.三层架构

MVC模式只是一种宏观的概念,而真正运用到软件开发设计的是三层架构。

  • 表现层:控制器+视图,主要是接收请求然后调用业务逻辑层最终实现响应。
  • 业务逻辑层:对业务逻辑进行封装,组合数据访问层的基本功能,形成复杂的业务逻辑。
  • 数据访问层:对数据库的基本操作,增删改查等。

还是同一个例子,登录注册界面。首先需要对数据库的基本操作,增删查改啊就属于数据访问层;而要实现登录注册肯定不是简单的增删(不过确实也比较简单)操作啊,注册的时候需要先根据账户查询判断是否已经存在,不存在那就再执行插入操作。然后将这一些列操作进行封装就是业务逻辑层;表现层那就更容易理解了,就是接收请求,解析注册时输入的用户名和密码,再调用业务逻辑层响应注册成功or失败。

而我们比较熟知的三大框架就对应三层架构,SpringMVC就对应表现层,MyBatis对应数据访问层,Spring对应业务逻辑层。当然Spring对其它两层也都有支持,SpringMVC就是它的一个子项目。

4.总结

了解了三层架构之后写Javaweb代码后就会更加有条理性,将不同层的代码放入不同的包中,不仅有了规范还能进行代码的复用。

你可能感兴趣的:(笔记,mvc,架构,spring,java-ee)