• SpringMVC的初理解


    1. SpringMVC是对表述层(Controller)解决方案

    主要是        1.简化前端参数接收( 形参列表 )

                       2.简化后端数据响应(返回值)

    1.数据的接受

            1.路径的匹配 使用@RequestMapping(可以在类上或在方法上),支持模糊查询,在内部有method附带请求方式限制(有Post,get ,put delete).有GetMapping,PostMapping

            2.接受参数:(如果不是接受视图的,使用@ResponseBody)

                            1.params的参数:@RequestParam

                            2.路径的参数:在@RequestMapping使用{},使用@PathVaribale

                            3.json的数据:@RequestBody(需要配置jackson的Maven包在config中使用@

    EnbaleWebMvc)

                            4.Cookie的数据:@CookieValue

                            5.获得请求头的数据:@RequestHeader

      2.响应数据:1.转发(forward:/*)与重定向(redirect:/*):

                                    2.返回json的数据:@EnableWebMvc,在方法使用@ResponseBody

                                    3.返回静态的资源:(在config中)

    1. //开启静态资源处理
    2. @Override
    3. public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
    4. configurer.enable();
    5. }

    3.使用RESTFul的风格:

                    1.使用路径的命名

                    2.使用什么参数响应

                    3.使用什么方式请求

                    

    在命名的时候,建议不要去用动词(URL的路径要求.

    总结:使用put与Post使用Json参数请求,而使用delete ,get 使用 param 与路径,返回值只有一个时,使用路径。

            4.SpringMvc的其他:

                            1.全局的异常处理:申明一个advice的类,@ResponseBody与@ControllerAdvicec

    在类中写异常信息,使用@ExceptionHandle

                            2.使用拦截器:(在请求handle前,后与请求视图后),接口是WebMvcConfigurer

                                    使用preHandle ,postHandle,afterCompletion方法,addInterceptRegistry,excludePathpatterns

                            3.参数校验:使用JSR303,需要区别@NotNull,@NotEmpty,@NotBlank

                                 如果出现了异常,使用BindingResult(必须要与参数相邻)

                                    

  • 相关阅读:
    Tomcat Java内存马 Filter型
    spring懒加载
    mysql 中查看某个库中所有包含某个字段的表
    MyBatis 环境搭建配置全过程【IDEA】
    详解TCP网络协议栈的工作原理
    Yii 实现乐观锁和悲观锁
    【CVPR 2018】PIXOR: 点云中三维目标的实时检测
    RocketMQ源码(二十)之事务消息
    Nginx--SSL模块
    项目后端环境和前端环境的搭建
  • 原文地址:https://blog.csdn.net/2301_80035407/article/details/142165876