SpringBoot常用注解

***@RequestBody和@RequestParam

https://blog.csdn.net/justry_deng/article/details/80972817

  @RequestBody主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的);GET方式无请求体,所以使用@RequestBody接收数据时,前端不能使用GET方式提交数据,而是用POST方式进行提交。在后端的同一个接收方法里,@RequestBody与@RequestParam()可以同时使用,@RequestBody最多只能有一个,而@RequestParam()可以有多个。

注:一个请求,只有一个RequestBody;一个请求,可以有多个RequestParam。

注:当同时使用@RequestParam()和@RequestBody时,@RequestParam()指定的参数可以是普通元素、
       数组、集合、对象等等(即:当,@RequestBody 与@RequestParam()可以同时使用时,原SpringMVC接收
       参数的机制不变,只不过RequestBody 接收的是请求体里面的数据;而RequestParam接收的是key-value
       里面的参数,所以它会被切面进行处理从而可以用普通元素、数组、集合、对象等接收)。
       即:如果参数时放在请求体中,传入后台的话,那么后台要用@RequestBody才能接收到;如果不是放在
              请求体中的话,那么后台接收前台传过来的参数时,要用@RequestParam来接收,或则形参前
              什么也不写也能接收。

注:如果参数前写了@RequestParam(xxx),那么前端必须有对应的xxx名字才行(不管其是否有值,当然可以通
       过设置该注解的required属性来调节是否必须传),如果没有xxx名的话,那么请求会出错,报400。

注:如果参数前不写@RequestParam(xxx)的话,那么就前端可以有可以没有对应的xxx名字才行,如果有xxx名
       的话,那么就会自动匹配;没有的话,请求也能正确发送。
       追注:这里与feign消费服务时不同;feign消费服务时,如果参数前什么也不写,那么会被默认是
                  @RequestBody的。

 

@SpringBootAplication 标识入口类,将其所在包和其子包全部装入spring容器中。只能出现一次。这个注解是许多个注解组合而成的。等价于@SpringBootConfiguration(标志注解,标志这是入口类)、@EnableAutoConfigration(核心注解,自动配置spring以及引入的第三方技术)、@ComponentScan(组件扫描注解,默认扫描秒入口类所在的包,以及他的子包)

元注解:就是修饰注解的注解,@Doucment、@Inherited、@Retention(指定注解的生效时机)、@Target(指定注解的修饰范)围。

application中main函数的作用:启动内嵌tomcat服务器,

springapplication.run(application.class,args)参数一:入口类的对象,目的是让@EnableAutoConfigration自动配置print时将@ComponentScan扫描到注解创建对象一并放入工厂。参数二是main函数的参数,这个参数通过指定外部虚拟机参数形式覆盖应用内部默认参数。

@RestController (相当于@controller和@responseBody的结合)用在类上,所有的控制器上,作用是将类中所有控制器方法的返回值转换为json并响应到前端。

@controller  表示控制器

@responseBody 将返回值转换成json

***配置文件拆分:

将公共配置防止主配置文件中,将不同配置文件中放入不同环境的配置文件中;application.yml公共(在主配置文件中要激活响应的配置文件,spring:profiles:active:dev或者prod)   application-dev.yml 开发  application-prod.yml  生产   

SpringBoot banner:创建一个banner.txt

 

***spirng boot工厂特性之创建对象

单个自定义对象:@Component通用组件对象注解   @Service业务层注解  @Controller控制器注解   @Repository创建DAO组件

一次性创建多个组件对象把汗复杂对象:@Configuration 配置注解 修饰范围:用在类上,作用相当于以前的spring.xml配置文件,管理对象的创建。

@Bean 相当于spring.xml中的Bean标签,用来创建这个对象在工厂的一个实例。

@PathVariable是spring3.0的一个新功能:接收请求路径中占位符的值;通过 @PathVariable 可以将URL中占位符参数{xxx}绑定到处理器类的方法形参中@PathVariable(“xxx“)

 

****springboot获取前端参数的几种常用注解

获取参数的几种常用注解:https://blog.csdn.net/qq_20957669/article/details/89227840

@PathVariable:一般我们使用URI template样式映射使用,即url/{param}这种形式,也就是一般我们使用的GET,DELETE,PUT方法会使用到的,我们可以获取URL后所跟的参数。

@RequestParam:一般我们使用该注解来获取多个参数,在()内写入需要获取参数的参数名即可,一般在PUT,POST中比较常用。请求的url参数中的name必须要和@RequestParam("name")一致,

@RequestBody:该注解和@RequestParam殊途同归,我们使用该注解将所有参数转换,在代码部分在一个个取出来,也是目前我使用到最多的注解来获取参数
@RequestHeader来获取头信息里的值,

@CookieValue来获取Cookie值。

@RequestHeader("mytoken")获取请求头中的mytoken信息。
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值