Spring MVC 常用注解

news2024/11/18 9:29:25

目录

基础概念

常用注解介绍


基础概念

1、MVC :代表一种软件架构设计思想,通俗的理解:客户端发送请求到后台服务器的Controller(C),控制器调用Model(M)来处理业务逻辑,处理完成后,返回处理后的数据到View(V)

2、Spring MVC: 是基于MVC设计思想实现的一种框架,它的核心是控制器Controller,所有控制器对象也会被Spring IOC容器管理

3、REST:Representational State Transfer 表述性状态传递,资源在网络中以某种表现形式进行状态转移

4、Restful:基于REST理念形成的一套开发风格,是具体的开发规则,规则示意图如下:

各类客户端发送RestFul风格的API 到后台服务器,服务器只返回数据到各个客户端,至于每种客户端怎么展示数据,由客户端决定。这有别于传统的Web应用,它会返回html(由servlet渲染)并且包含跳转逻辑,引入Rest 开发风格后,这些逻辑由客户端决定。

常用注解介绍

  • @GetMapping 绑定GET请求,注解作用在方法上

  • @PostMapping 绑定Post请求,注解作用在方法上

  • @RequestMapping 通用注解,通常用在Controller上,用于请求URL的前缀

  • @Controller 控制器类,作用在类上,@Controller类中的方法可以直接通过返回String跳转到jsp、ftl、html等模版页面
  • @ResponseBody 作用在方法上,标识返回实体对象,使用此注解后,方法返回的数据会直接写入HTTP响应体中。‌

  • @RestController 作用在类上,此注解相当于 @Controller 和 @ResponseBody 的结合,此注解可以创建RESTful风格的数据,主要有get、post、put、delete等,可以方便地处理输出和输入的JSON或XML数据,适用于前后端分离的架构。
  • @PathVariable ,作用在参数上,将‌URL中的路径参数绑定到方法的参数上

  • @RequestParam,作用在参数上,请求参数

  • @RequestBody,作用在参数上,用于获取请求体的数据,请求体可以放置各类数据(html,字符串,json,xml等)一个请求,只有一个RequestBody,但可以有多个RequestParam

对于每次请求的数据较多,参数较多,建议将请求数据放在http请求体中,多个参数建议封装成一个bean对象接收

  • @CrossOrigin,作用在类或方法上,用于处理跨域资源共享(CORS)问题。通过额外的HTTP头来告诉浏览器允许来自不同源的服务器上的资源被访问。作用在类上,该类中的所有方法都启用跨域支持;作用在方法上,只会使该方法启用跨域支持

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2184248.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【CKA】七、七层负载-Ingress应用

7、七层负载-Ingress应用 1. 考题内容: 2. 答题思路: 1、要先查到集群中使用的ingressclass 2、编写yaml 我考的题只是把 hi 服务换成了 hello,其他都一模一样 3. 官网地址: https://kubernetes.io/zh-cn/docs/concepts/serv…

基于SSM的大型商场会员管理系统【附源码】

基于SSM的大型商场会员管理系统(源码L文说明文档) 目录 4 系统设计 4.1布局设计原则 4.2功能模块设计 4.3数据库设计 4.3.1数据库E-R图 4.3.2 数据库表结构 第五章 系统实现 5.1 管理员功能实现 5.1.1 员工管理 5.1…

基于SD卡的基因(DNA)炫酷LED桌面灯

基于SD卡的基因(DNA)炫酷LED桌面灯 一、介绍一个已知的问题解决办法 二、支持目录材料准备LED灯光文件(我使用的PLA颜色) 三、 打印部件和焊接四、拼装打印的DNA散件五、组合DNA螺旋结构六、执行DNA文件七、程序烧录八、总结及成品…

六、Drf限流组件

六、限流组件 限制某个视图在某个时间段内被同一个用户访问的次数 6.1限流组件的简单应用 1)安装django-redis pip3 install django-redis2)在settings.py中注册cache #缓存数据库redis配置 CACHES{"default":{"BACKEND":"django_red…

AI 对话工具汇总

🐣个人主页 可惜已不在 🐤这篇在这个专栏AI_可惜已不在的博客-CSDN博客 🐥有用的话就留下一个三连吧😼 目录 前言: 正文: 前言: 在科技飞速发展的时代,AI 对话正逐渐成为我们获取信息、交流思想的新方式。它以强…

Mysql(索引与事务)

索引查询与普通查询的区别 普通查询 :执行步骤为先对表进行遍历,然后把当前的行带入条件中进行判断,符合条件执行,不符合跳出。这种情况在遇见数据较多的情况下就会出现问题,效率太低。 索引查询:是对查询…

深入解析 https

我的主页:2的n次方_ 1. 背景介绍 在使用 http 协议的时候是不安全的,可能会出现运营商劫持等安全问题,运营商通过劫持 http 流量,篡改返回的网页内容,例如广告业务,可能会通过 Referer 字段 来统计是…

k8s的控制节点不能访问node节点容器的ip地址

master控制node服务器添加容器后,访问不了该node服务器容器的ip,只能在node服务器访问 排查后发现是k8s的master服务器和node节点的网址网段和k8s初始化时提示的ip网段不一致 我之前是192.168.137.50, 实际上master主机期望的是192.168.1.50 解决方案: 1.删除服务器后重建ma…

网络原理-TCP协议

回顾上文 上一篇博客中详细描述了UDP的报文格式及特点 UDP报头 UDP载荷(应用层数据报),源端口,目的端口,报文长度,校验和无连接,不可靠传输,面向数据报,全双工 这一篇…

新160个crackme - 071-Rith.1

运行分析 需要破解Name和Serial点击Check It!按钮没反应 PE分析 C程序,32位,无壳 静态分析&动态调试 ida搜索字符串,双击进入关键函数 进行动态调试,逻辑如下:1、Name长度为5~20,Serial长度…

算法笔记(三)——前缀和算法

文章目录 一维前缀和二维前缀和寻找数组的中心下标除自身以外数组的乘积和为 K 的子数组和可被 K 整除的子数组连续数组矩阵区域和 前缀和算法是一种用空间换时间的算法,他常常用于解决某些题目或者作为某些高级算法的组成部分 一维前缀和 题目链接:DP3…

【最新】微信小程序连接onenet——stm32+esp8266+onenet实现查看温湿度,控制单片机

微信小程序——stm32esp8266onenet实现查看温湿度,控制单片机 (最新已验证)stm32 新版 onenet dht11esp8266/01s mqtt物联网上报温湿度和控制单片机(保姆级教程) :↓↓👇 👇 👇 &#x1f447…

【Linux】进程优先级、调度、命令行参数:从理论到实践(二)

🌈 个人主页:Zfox_ 🔥 系列专栏:Linux 目录 🚀 前言一: 🔥 进程优先级 🍵 基本概念🍵 查看系统进程🍵 PRI and NI🍵 PRI vs NI🍵 用to…

【Java SE 题库】移除元素(暴力解法)--力扣

🔥博客主页🔥:【 坊钰_CSDN博客 】 欢迎各位点赞👍评论✍收藏⭐ 目录 1. 题目 2. 解法(快慢“指针”) 3. 源码 4. 小结 1. 题目 给你一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素。元素的顺…

Pre-trained Models for Natural Language Processing: A Survey

前言 预训练模型给下游任务带来的效果不言而喻,有了预训练模型,我们可以使用它来加速解决问题的过程。正如论文中所说的那样,预训练模型(PTMs)的出现将自然语言处理(NLP)带入了一个新时代。本篇…

各种饺子的做法

【羊肉馅水饺】 材料:羊肉1000克、洋葱2个、香油3汤匙、盐适量、姜2片、料酒1汤匙、白胡椒粉、十三香1茶匙、 做法: 1.把羊肉剁成肉馅,羊肉选用带一些肥肉的,味道比较香,如果羊肉比较瘦,可以放一些猪的肥肉一起剁成馅…

【Python】探索自然语言处理的利器:THULAC 中文词法分析库详解

THULAC(THU Lexical Analyzer for Chinese)是清华大学开发的一款中文词法分析工具,集成了分词和词性标注两大功能。THULAC 拥有强大的分词能力和高效的词性标注,适用于多种中文文本处理场景。该工具能够在保证高准确率的同时保持较…

修复OpenSSH远程代码执行漏洞:版本升级到9.9p1

目录 前言1. 备份配置文件2. 下载 OpenSSH 最新版本3. 编译安装 OpenSSH4. 替换旧版 OpenSSH 并创建符号链接5. 重启 SSH 服务6. 验证安装结果结语参考文章 前言 OpenSSH 是一种广泛使用的远程登录协议,它确保了服务器和客户端之间的安全通信。然而,随着…

Linux驱动开发(速记版)--设备树

第五十二章 初识设备树 52.1 设备树介绍 设备树(Device Tree)是嵌入式系统和Linux内核中用于描述硬件的一种机制。 设备树概述 目的:描述硬件设备的特性、连接关系和配置信息。 优势:与平台无关,提高系统可移植性和可…

【linux进程】进程优先级命令行参数环境变量

目录 一,进程切换二,进程优先级1. 什么是优先级2. 权限 vs 优先级3. 为什么要有优先级4. 优先级的查看方式 三,命令行参数1. 什么是命令行参数2. 为什么要有命令行参数3. 是谁做的 四,环境变量1. 基本概念2. 常见环境变量3. 查看环…