当前位置: 首页 > news >正文

SpringMVC(六):SpringMVC的常见注解

文章目录

SpringMVC的常见注解

一、@RequestMapping

二、@RequestParam

三、@PathVariable

四、@RequestHeader(了解)

五、@CookieValue(了解)


SpringMVC的常见注解

一、@RequestMapping

作用:用于建立请求URL和处理请求方法之间的对应关系

出现位置

类上:请求 URL 的第一级访问目录,此处不写的话,就相当于应用的根目录,写的话需要以/开头

方法上: 请求URL的第二级访问目录

属性:

value:用于指定请求的 URL,它和 path 属性的作用是一样的。

method:用于指定请求的方式。

params(了解):用于指定限制请求参数的条件,它支持简单的表达式。要求请求参数的 key 和 value 必须和 配置的一模一样。

headers(了解):用于指定限制请求消息头的条件。

二、@RequestParam

作用:把请求中指定名称的参数给控制器中的形参赋值。

属性:

value:请求参数中的名称。

required:请求参数中是否必须提供此参数,默认值:true,表示必须提供,如果不提供将报错。

@RequestMapping("/getRequestParam") 
public String getRequestParam(@RequestParam("name")String uname, @RequestParam(value="age",required=false)Integer age){ 
    System.out.println(username+","+age); 
    return "success"; 
}

 

三、@PathVariable

Restful的简介 :

REST(英文:Representational State Transfer,简称 REST)restful是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

restful 的优点:

它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用。

作用:

用于绑定 url 中的占位符。例如:请求 url 中 /delete/{id},这个{id}就是 url 占位符。 url 支持占位符是 spring3.0 之后加入的。是 springmvc 支持 rest 风格 URL 的一个重要标志。

属性:

value:用于指定 url 中占位符名称。

required:是否必须提供占位符。

@Controller
public class PathController {
    @RequestMapping("/testPathVariable/{id}/{username}")
    public String testPathVariable(@PathVariable("id") Integer id, @PathVariable("username") String username){
        System.out.println("id:"+id);
        System.out.println("username:"+username);
        System.out.println("testPathVariable1");
        return "success";
    }
}

 

四、@RequestHeader(了解)

作用:用于获取请求消息头。

属性:

value:提供消息头名称

required:是否必须有此消息头

@RequestMapping("/getRequestHeader") 
public String getRequestHeader(@RequestHeader(value="Accept", required=false)String requestHeader){ 
    System.out.println(requestHeader); 
    return "success"; 
}

五、@CookieValue(了解)

作用:用于把指定cookie名称的值传入控制器方法参数。

属性:

value:指定 cookie 的名称。

required:是否必须有此 cookie

实现:

@RequestMapping("/getCookie") 
public String getCookie(@CookieValue(value="JSESSIONID",required=false) String cookieValue){ 
    System.out.println(cookieValue); 
    return "success"; 
} 

  • 📢博客主页:https://lansonli.blog.csdn.net
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
  • 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨

相关文章:

  • 【CVPR2018】PSMNet:一个基于金字塔的端到端立体匹配网络
  • 基于javaweb的医院管理系统(java+springboot+mybatis+vue+mysql)
  • STM32F103实现激光测距传感器测距WT-VL53L0 L1
  • Python高级_第6章_Python简单爬虫实践案例
  • C++ 引用的数组和数组的引用
  • LQ0134 最大降雨量【中位数】
  • 大数据随记 —— 利用Python分析快手APP全国大学生用户数据(2022 年初赛第四题 )
  • 【转载】分布式训练和集合通信
  • 【K8S系列】Kubernetes的网络模型
  • CTFHub | 报错注入
  • Python-代码封装思想
  • 基于MATLAB的指纹识别算法仿真实现
  • Spring Boot中异步消息JMS的讲解与通信实例
  • JeecgBoot 3.4.3-GA 版本发布,开源免费的企业级低代码平台
  • 代码随想录38——动态规划:动态规划理论基础、509斐波那契数列、70爬楼梯、746使用最小花费爬楼梯
  • 【译】JS基础算法脚本:字符串结尾
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • Consul Config 使用Git做版本控制的实现
  • fetch 从初识到应用
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • Linux链接文件
  • Lsb图片隐写
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • Python利用正则抓取网页内容保存到本地
  • ReactNative开发常用的三方模块
  • React组件设计模式(一)
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 机器学习 vs. 深度学习
  • 记一次用 NodeJs 实现模拟登录的思路
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 让你的分享飞起来——极光推出社会化分享组件
  • 什么软件可以剪辑音乐?
  • 想使用 MongoDB ,你应该了解这8个方面!
  • 学习ES6 变量的解构赋值
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • #HarmonyOS:基础语法
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (JSP)EL——优化登录界面,获取对象,获取数据
  • (初研) Sentence-embedding fine-tune notebook
  • (二)PySpark3:SparkSQL编程
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (转)shell中括号的特殊用法 linux if多条件判断
  • .net wcf memory gates checking failed
  • .net 调用php,php 调用.net com组件 --
  • .NET 快速重构概要1
  • .NET/C# 使窗口永不激活(No Activate 永不获得焦点)
  • .NET学习全景图
  • .vue文件怎么使用_我在项目中是这样配置Vue的
  • /etc/sudoers (root权限管理)
  • ::
  • @AliasFor注解
  • @Data注解的作用
  • @JsonFormat与@DateTimeFormat注解的使用