首页 > 编程语言 > 详细

Spring Boot常用注解

时间:2021-04-07 15:12:34      阅读:20      评论:0      收藏:0      [点我收藏+]

@SpringBootApplication

作用:标注在某个类上说明这个类是SpringBoot的主配置类,让spring boot自动给程序进行必要的配置,这个配置等同与:@configuration,@EnableAutoConfiguration 和 @ComponentScan三个配置

@ResponseBody

作用:将java对象转为JSON或者XML格式的数据

解释:将controller的方法返回的对象通过springmvc提供的HttpMessageConverter接口转换为指定的格式后,写入到HTTP response对象的body区,通常用来返回JSON或者XML格式的数据

注意:在使用此注解后不会再走试图处理器,而是直接将数据写入到输入流中,
    在使用@RequestMapping后,返回值通常解析为跳转路径,但是加上@ResponseBody后返回结果不会被解析为跳转路径,而是直接写入HTTP response body中。

@RequestBody

作用:用于读取http请求的内容

解释:通过springmvc提供的HttpMessageConverter接口将读到的内容转换为java对象并绑定到Controller方法的参数上

@Controller

作用:用于定义控制器类

解释:分发处理器会扫描使用该注解的类的方法,并检测该方法是否使用了@RequestMapping注解,@Controller只是定义了一个控制器类,而使用@RequestMapping注解的方法才是处理请求的处理器

备注:在spring中,还需要把这个控制器交给spring来管理。

<!--基于注解的装配-->
<!--方式一-->
<bean class="xxx.xxx"/>
<!--方式二-->
<!--路径写到controller的上一层-->
<context:component-scan base-package="xxx"/>

@RestController

作用:用于标注控制层组件,相当于@ResponseBody 和 @Controller的合集

@RequestMapping

作用:用来映射请求,负责URL到Controller中的具体函数的映射

@EnableAutoConfiguration

作用:SpringBoot自动配置,尝试根据你添加的jar依赖自动配置你的Spring应用

@ComponentScan

作用:默认会扫描该类所在的包下所有的配置类

@Configuration

作用:相当于传统的xml配置文件

@Autowired

作用:自动导入依赖的bean

@Service

作用:用于修饰业务层的组件

@Repository 和 @Mapper

作用:用于声明一个Bean,前者时spring的注解,后者是mybatis的注解、

备注:在仅使用@Mapper注解时,依赖注入时,IDEA会提示错误(不影响运行),这是因为我们没有显示标注这是一个Bean。
解决方案:在对应的接口上添加bean的声明,可以是@Repository,也可以是@Component,效果都是一样的,只是为了声明为bean

@Bean

作用:用@Bean标注方法等价于XML中配置的bean

@Value

作用:将外部的值动态注入到Bean中

@Component

作用:泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注

@Qualifier 和 @Resourse

作用:@Autowired默认按照类型匹配注入bean,如果有多个实现类,可以用@Qualifier("实现类名称")表明注入的是哪一个实现类的bean。@Resourse默认按照名称匹配注入bean,可以使用name属性来去欸的那个实际注入的bean,例,@Resourse(name = "xxxx")

@PathVariable

作用:将URL中占位符参数绑定到控制器处理方法的入参中

@RequestMapping(value = "/{userId}" , )
public User deleteUser(@PathVariable (value = "userId") int userId){
    ...
    return user;
}

@RequestParam

作用:将请求参数绑定到控制器方法的参数上

@RequestParam(value=”参数名”,required=”true/false”,defaultValue=””)

value:参数名
 
required:是否包含该参数,默认为true,表示该请求路径中必须包含该参数,如果不包含就报错。
 
defaultValue:默认参数值,如果设置了该值,required=true将失效,自动为false,如果没有传该参数,就使用默认值

@ModelAttribute

作用:该注解通常在Controller上的某个方法上,此方法会首先被调用,并将方法作为Mode的属性,然后在调用对应的Controller处理方法

@Param

作用:给参数命名

Spring Boot常用注解

原文:https://www.cnblogs.com/zmy98/p/14627370.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!