Spring Boot开发实战(第7章 使用Spring MVC开发Web应用)

目录

7.1 Spring MVC简介

7.1.1 Servlet概述

7.1.2 MVC简介

7.1.4 Spring MVC框架

7.2 Spring MVC常用注解


7.1 Spring MVC简介

7.1.1 Servlet概述

    Servlet运行于支持Java的应用服务中
    Servlet中的每个请求由一个轻量级的Java线程处理,而Servlet程序运行在JVM进程中
    Web Server服务器:处理和响应客户端的HTTP请求
    Web Application应用程序:服务器的Java Web应用,他是Servlet的集合
    Web Container容器(Servlet容器、Servlet引擎):它是与Servlet交互的Web服务器的一部分

7.1.2 MVC简介

    MVC是一种解耦软件组件、提高代码复用性的框架模式,有三层:模型(model)-视图(view)-控制器(controller)
    1.Models(模型层):处理核心业务(数据逻辑),模型对象负责在数据库中存取数据
    2.Views(视图层):展示模型层的数据
    3.Controllers(控制器层):处理用户的响应和请求;从视图读取数据,控制用户输入,并向模型发送数据

7.1.4 Spring MVC框架

    Spring MVC使用“请求-响应”模型,采用了约定优于配置的契约编程风格
    Spring MVC处理一个HTTP请求的详细过程:
    1)用户发送请求至前端控制器DispatcherServlet,DispatcherServlet收到请求调用HandlerMapping处理映射器
    2)处理器映射器根据请求URL找到具体的Controller处理器返回给DispatcherServlet
    3)DispatcherServlet通过HandlerAdapter处理器适配器调用Controller处理请求
    4)执行Controller处理器方法
    5)返回Controller执行结果ModelAndView到HandlerAdapter处理器适配器
    6)HandlerAdapter将ModelAndView返回给DispatcherServlet
    7)DispatcherServlet将ModelAndView的ViewName传给ViewReslover视图解析器
    8)ViewReslover解析后将具体的View返回给DispatcherServlet
    9)DispatcherServlet传递Model数据至View,对View进行渲染视图(模型数据填充至视图)
    10)DispatcherServlet响应用户

7.2 Spring MVC常用注解

    @Controller:定义一个控制器类,负责注册一个控制器Bean到Spring上下文中
    @RequestMapping:处理请求地址映射的注解,可用于类和方法上
     1)类上:所有请求的方法都是以改地址作为父路径
     2)方法上:请求的实际地址
    @RequestBody:读取Request请求的body部分数据,使用HandlerAdapter配置的HTTPMessageConverter进行解析
    @ResponseBody:将Controller方法返回的对象通过HTTPMessageConverter转换为指定格式写入Response对象的body区(返回数据不是HTML页面时使用)
    @ModelAttribute:可作用于方法和参数
     1)作用于方法:处理@RequestMapping之前为请求绑定需要从后台查询的model
     2)作用于参数:把相应名称的值绑定到注解的参数Bean上
    @SessionAttribute:将值放到session作用域中,作用在class上
    @RequestParam:标注处理方法入参,将请求参数传递给请求方法
    @PathVariable:绑定URL路径占位符到入参
    @ExceptionHandler:作用对象为方法,出现异常是执行该方法
    @ControllerAdvice:使一个Controller成为全局的异常处理类,类中哟领@ExceptionHandler注解的方法可处理所有Controller发生的异常
    @RequestHeader:把Request请求的header部分的值绑定到方法的参数上
    @CookieValue:把Request请求header中cookie的值绑定到方法的参数上

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值