码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 11.3SpringMVC


    一.概念

    1.SpringMvc: 

    a.构建在Servlet(api)基础上.

    b.是一个Web框架(HTTP).

    c.来自于Spring webMVC模块.

    2.MVC

    fa362beda0e946aa94129b553aaa35f7.jpeg

    二.注册路由的注解

    1.@RequestMapping("/test") // 路由注册

    注意: 这个注解在类和方法上都要使用,代表不同等级的路由.

    2.@RestController

    a)@ResponseBody // 告诉程序我返回的是一个数据而非页面
    b)@Controller // 让框架启动的时候加载当前(只有加载的类,别人才能使用[访问])

    注意: @RestController = @ Controller + @ ResponseBody

    3.方法注解: @RequestMapping(valve ="/hi", method = RequestMethod.POST)(一般用下面两种方法)

    a)@PostMapping("/hi")

    b)@GetMapping("/hi")

    三.传参(参数名相同)

    1.形参类型使用包装类, 否则(使用基础类型)如果前后端传参错误会报错500.

    2.对应多参数,使用对象传参(类在后端实现好),前端传这个类中全部的属性.

    3.后端参数映射(重命名): 使用注解@RequestParam

    7e13a6b2378e467491232bacecd030fd.png

    注意: 重命名之后,默认参数必须传递,可以改为不必须传递.

    3e2e03a4963342c386ee7f2668f91dd5.png

    4.JSON: 使用注解@RequestBody

    7fb2bb438d9b40eaafd6ca78ce591b0a.png

    注意: Get方法不能再Body中传输数据. 

    5.URL传参: 使用注解@PathVariable

    415806462a9142af91aca5bb78834660.jpg

    ae46a263a38a4bb8b3f13a4e8bd7dce0.jpg

    6.文件传输(图片,文本,MP3......): 使用注解@RequestPart,注意格式.

    4af05a7ab4ac48478cc5dd2ec9368e18.jpg

    dcf8a7b44a134feeacdc4ebded91f48d.jpg

    7.获取Cookie:

    注意: SpringMVC中内置了HttpServletRequest和HttpServletResponse,所以Servlet的那一套方法在这里都可以使用.

    a.古老方法: 使用servlet

    b.新方法: 使用注解@CookieValue

    f60ac9d96a3c4eac8e86c4437facd0e2.jpg

    8.获取Header: 使用注解@RequestHeader

    c49e16f3f11a4e7880d705a7ccdc1569.jpg

    作用:用来获取用户设备类型和浏览器版本号.

    9.设置Session: 只能使用古老方法.

    10.获取Session: 两种方法

    a.古老方法.

    b.新方法: 使用注解@SessionAttribute

    7eaed46072e948529a6fe1b736523d95.jpg

    四.返回

    1.返回json格式: HashMap对象

    9948592338ca4504b85a65fde2b3dd51.jpg

    2.重定向和转发

    da7189d638164a1394778ae6dfa0f3d0.jpg

  • 相关阅读:
    Springboot老来福平台682f5计算机毕业设计-课程设计-期末作业-毕设程序代做
    深入理解final关键字
    react中自定义上传文件的hook
    APK安装过程解析
    HDFS 常见的运维技巧汇总
    1537170-85-6,DBCO-PEG4-acid,DBCO-PEG4-COOH,二苯并环辛炔-四聚乙二醇-羧酸科研用
    随机森林评价变量重要性可以无条件信任吗?
    Word处理控件Aspose.Words功能演示:使用 Python 合并 Word 文档
    Linux基础 - 常用命令
    续---初识HTML!!!(结束篇)
  • 原文地址:https://blog.csdn.net/m0_73345579/article/details/134385581
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号