MVC思想:
三层架构:
控制层:SpringMVC/Struts2
业务层:Spring
持久层:MyBatis/Hibernate
MVC原理:
控制器:接收请求,控制跳转,调用模型
模型:业务逻辑,数据存取
视图:界面模板,展示数据
MVC框架功能:
设置请求编码
接收请求参数
输入校验
参数类型转换
把参数封装成对象
设置共享数据
文件上传
文件下载
控制界面跳转
国际化处理
自定义标签
前端控制器: Font Contreller 模式
用来处理请求,请求应该先通过前端控制器处理,再发个各自的处理器(后端控制器:专门处理特定的或更具体的请求操作)
作用: 减少重复的代码,权限检查,授权操作,日志记录等
Spring Web框架
SpringMVC :同步阻塞
Spring WebFlux :异步
SpringMVC和Struct2
Spring MVC 的前端控制器是Servlet,Struts2是Filter
Spring MVC 比 Struts2快,Spring MVC 是基于方法设计,处理器是单例,而Struts2是基于类,每一次请求都会实例一个新的Action对象,Action是多例的
Spring MVC 更简洁,开发效率Spring MVC比Struts2 高,如支持
Struts2 的OGNL表达式使页面的开发效率比Spring MVC