本文仅为记录学习日常,如有违规侵权,联系删除
文案分享:
我会在那颠沛流离的生活里,坚持不懈
I will be in that displaced life, perseverance
常用注解汇总:
@SpringBootApplication
@Component、@Service、@Controller、@Repository
@ResponseBody
@RestController
@AutoWired、@Qualifier、@Resource
@RequestMapping、@GetMapping、@PostMapping
@Configuration、@Bean
@RequestParam、@RequestBody、@PathVariable、@RequestHeader
@SpringBootApplication 三合一注解
注解 | 说明 |
---|---|
@springBootConfiguration | 与@Configuration作用相同,都是用来声明当前类是一个配置类,这里说明当前springboot主类也是一个配置类 |
@ComponentScan | 用来自动扫描被这些注解标识的类,最终生成ioc容器里的bean,默认扫描范围是@ComponentScan注解所在的包以及子包的类 |
@EnableAutoConfiguration | 是springboot实现自动装配的核心注解,通过源码可以看到通过这个类会自动找到spring.factories文件读取里面的配置信息,返回一个List集合,通过这个注解把spring应用所需要的bean注入到容器中 |
@Component、@Service、@Controller、@Repository
总体来说功能都一样,都是把被这些注解标明的类纳入到spring容器中管理
注解 | 说明 |
---|---|
@Repository | 持久层(dao)注入spring容器 |
@Service | 业务逻辑层(server)注入spring容器 |
@Controller | 控制层(controller)注入spring容器 |
@Component | 普通bean(pojo)注入spring容器 |
@ResponseBody
@ResponseBody可以作用在方法上或者作用在类上,表示该方法的返回结果是Json格式的数据。
注解 | 说明 |
---|---|
@ResponseBody | @ResponseBody的作用其实是将java对象转为json格式的数据。 |
@RestController
@AutoWired、@Qualifier、@Resource
总体来说功能都一样,基于注解的方式进行自动装配,在容器里面将查到的bean返回回来。
注解 | 说明 |
---|---|
@AutoWired | @AutoWired默认按照类型装配,如果发现多个bean,则按照名称比对,如果还有多个那就报错 |
@Qualifier | @Qualifier按照名字注入,一般结合@AutoWired使用(使用频率低) |
@Resource | @Resource(name=“xxxxx”)根据名称属性注入,如果匹配不成功则按照类型匹配;约等于@AutoWired+@Qualifier |
@RequestMapping、@GetMapping、@PostMapping
@Configuration、@Bean
一般来说 两个注解联合使用,@Configuration作用于类上面,表明这是一个配置类,@Bean产生一个Bean对象加入Spring IOC容器
注解 | 说明 |
---|---|
@Configuration | 作用在类上表示这是一个配置类,就相当于spring的xml文件中的<beans>标签 |
@Bean | 产生bean对象加入容器,作用于方法上,可理解为用spring的时候xml里面的<bean>标签 |
@RequestParam、@RequestBody、@PathVariable、@RequestHeader
总的来说都是用来接收参数的
注解 | 说明 |
---|---|
@RequestParam | 获取查询参数,通过使用这个注解我们接收的url格式为:url?id= |
@PathVariable | 获取路径参数,通过使用这个注解我们接收到的url格式为:url/{id},此时不需要在postman测试时不需要在params里面传参数,直接在url上拼接 |
@RequestBody | 获取body的参数,一般用于post获取json格式的参数 |
@RequestHeader | 获取请求头的信息,在postman中测试需要在Headers里面传值 |