面试-springboot有哪些常用注解?

springboot中的常用注解有:1、SpringBootApplication;2、Repository;3、Service;4、RestController;5、ResponseBody;6、Component等

1、@SpringBootApplication

这个注解是Spring Boot最核心的注解,用在 Spring Boot的主类上,标识这是一个 Spring Boot 应用,用来开启 Spring Boot 的各项能力。实际上这个注解是@Configuration,@EnableAutoConfiguration,@ComponentScan三个注解的组合。由于这些注解一般都是一起使用,所以Spring Boot提供了一个统一的注解@SpringBootApplication,目的是开启自动配置

2、@EnableAutoConfiguration

允许 Spring Boot 自动配置注解,开启这个注解之后,Spring Boot 就能根据当前类路径下的包或者类来配置 Spring Bean
@EnableAutoConfiguration实现的关键在于引入了AutoConfigurationImportSelector,其核心逻辑为selectImports方法,逻辑大致如下:

1.从配置文件META-INF/spring.factories加载所有可能用到的自动配置类;
2.去重,并将exclude和excludeName属性携带的类排除;
3.过滤,将满足条件(@Conditional)的自动配置类返回;

3、@Configuration

用于定义配置类,指出该类是 Bean 配置的信息源,相当于传统的xml配置文件,一般加在主类上。如果有些第三方库需要用到xml文件,建议仍然通过@Configuration类作为项目的配置主类——可以使用@ImportResource注解加载xml配置文件

4、@ComponentScan

组件扫描。让spring Boot扫描到Configuration类并把它加入到程序上下文。
@ComponentScan注解默认就会装配标识了@Controller,@Service,@Repository,@Component注解的类到spring容器中。

5、@Repository

用于标注数据访问组件,即DAO组件。
使用@Repository注解可以确保DAO或者repositories提供异常转译,这个注解修饰的DAO或者repositories类会被ComponetScan发现并配置,同时也不需要为它们提供XML配置项。

6、@Service

一般用于修饰service层的组件

7、@RestController

用于标注控制层组件(如struts中的action),表示这是个控制器bean,并且是将函数的返回值直 接填入HTTP响应体中,是REST风格的控制器;它是@Controller和@ResponseBody的合集。

8、@ResponseBody

表示该方法的返回结果直接写入HTTP response body中
一般在异步获取数据时使用,在使用@RequestMapping后,返回值通常解析为跳转路径,加上@responsebody后返回结果不会被解析为跳转路径,而是直接写入HTTP response body中。比如异步获取json数据,加上@responsebody后,会直接返回json数据。

9、@Component

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

10、@Bean

相当于XML中的,放在方法的上面,而不是类,意思是产生一个bean,并交给spring管理。

11、@AutoWired

byType方式。把配置好的Bean拿来用,完成属性、方法的组装,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。(当加上(required=false)时,就算找不到bean也不报错。)

12、@Qualifier

当有多个同一类型的Bean时,可以用@Qualifier(“name”)来指定。与@Autowired配合使用

13、@Resource(name=“name”,type=“type”)

没有括号内内容的话,默认byName。与@Autowired干类似的事。

14、@RequestMapping

RequestMapping是一个用来处理请求地址映射的注解;提供路由信息,负责URL到Controller中的具体函数的映射,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。

2022-06-22

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot中的常用注解有很多,其中一些常见的注解及其作用如下: 1. @SpringBootApplication:这是Spring Boot最核心的注解,用在Spring Boot的主类上,标识这是一个Spring Boot应用,用来开启Spring Boot的各项能力。它是@Configuration,@EnableAutoConfiguration和@ComponentScan三个注解的组合。 2. @Repository:用于标识一个类是数据访层(DAO)的组件,通常与持久化操作相关的类会使用这个注解。 3. @Service:用于标识一个类是业务逻辑层(Service)的组件,通常用于定义服务接口的实现类。 4. @RestController:用于标识一个类是控制器(Controller)的组件,并且其中的方法都会返回JSON格式的数据。相比于@Controller注解,@RestController注解还会自动将方法的返回值转换为JSON格式。 5. @ResponseBody:用于标识一个方法的返回值应该直接作为响应体返回给客户端,而不是作为视图解析。 6. @Component:用于标识一个类是一个通用的组件,可以被其他组件自动扫描并注入。 这些注解在Spring Boot应用中起到了不同的作用,可以帮助开发者快速搭建和配置应用的各个层次。 #### 引用[.reference_title] - *1* *2* [面试-springboot有哪些常用注解?](https://blog.csdn.net/TeeGm/article/details/125380224)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [SpringBoot常用注解以及作用](https://blog.csdn.net/weixin_48016395/article/details/123316351)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值