Spring MVC 常用注解

目录

基础概念

常用注解介绍


基础概念

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头来告诉浏览器允许来自不同源的服务器上的资源被访问。作用在类上,该类中的所有方法都启用跨域支持;作用在方法上,只会使该方法启用跨域支持
相关推荐
武子康2 分钟前
Java-11 深入浅出 MyBatis 一级缓存详解:从原理到失效场景 Executor
java·后端
寻道码路16 分钟前
LangChain4j Java AI 应用开发实战(十):Embedding 模型与文本分类 - 语义向量化
java·人工智能·ai·embedding
折哥的程序人生 · 物流技术专研20 分钟前
Java 23 种设计模式:从踩坑到精通 | 抽象工厂 —— 支付/收款如何成套创建?跨平台 UI 如何一键换肤?
java·开发语言·后端·设计模式
方也_arkling22 分钟前
【Java-Day11】抽象类和抽象方法
java·开发语言
XS03010627 分钟前
并发编程 七
java
消失的旧时光-19431 小时前
企业认证与安全体系(四):企业登录认证流程全解析——JWT、Redis、Spring Security 如何协同工作?
redis·安全·spring·spring security·jwt
YikNjy1 小时前
string(c++)
java·服务器·c++
小江的记录本1 小时前
【Spring AI】Spring AI中RAG误触发与系统提示词泄露问题解决方案(完整版+代码方案)
java·人工智能·spring boot·后端·python·spring·面试
勇往直前plus1 小时前
Python 属性访问与操作全解析:内置函数、魔法方法与描述符深度指南
java·网络·python
Arenaschi1 小时前
关于GPT的版特点
java·网络·人工智能·windows·python·gpt