MVC模式:
M-model:模型(model):的职责是负责 业务逻辑,包含两层:业务数据和业务处理逻辑,比如实体类,dao,service都属于模型层。
V-view:视图(view):的职责是负责显示界面和用户交互(收集用户信息),属于视图的组件是不包含业务逻辑和控制逻辑的JSp
C-controller:控制器(controller)是模型层和视图层之间的桥梁,用于控制流程。
spring对mvc模式的实现与流程:
前段控制器负责整个请求的流程处理:
request:请求↓
dispatcherServlet(控制器:前端控制器):请求的入口,一个单实例的servlet将请求委托给了前端控制器,前段控制器将请求发送给控制器(controller)↓
handlermapping(控制器:处理器映射):为了确定请求对应的控制器,前段控制器通过一个或多个处理器映射找到对应的控制器↓
controller(控制器):进行具体流程的处理↓
modelandview(模型:封装业务处理结果和视图):控制器在进行逻辑处理完后会产生一些信息,需要发送给前台,这些信息就是模型,将会发送给前端控制器↓
view resolver(控制器:视图解析器):前端控制器会使用视图解析器将模型中的数据返回一个具体的视图实现↓
response:前端控制器将处理好的数据返回给前台↓
view(视图):负责接收数据并进行处理或显示
配置springMVC需要理解名词:
两个应用上下文:
1.applicationContext:在前端控制器启动的时候会加载,负责处理bean的创建,注入,使用,销毁等
2.contextLoaderListener:加载应用中其他bean,一般为驱动应用后端的中间层和数据称组件:https://www.cnblogs.com/libra0920/p/6163632.html
启动springMVC的两种方式:
1.xml中配置:<mvc:annotation-driven>
2.javaConfig:@configuration声明javaconfig,@enablewebmvc启动springMVC
书籍:(spring in action)