Fork me on GitHub

SpringMVC、SpringBoot、SpringCloud常用注解

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59

@Configuration:该使用该注解的类等价 与XML中配置beans,相当于Ioc容器,它的某个方法头上如果注册了@Bean,就会作为这个Spring容器中的Bean,与xml中配置的bean意思一样。

@Value:为了简化从properties里取配置,可以使用@Value, 可以properties文件中的配置值。

@Controller, @Service, @Repository,@Component:目前4种注解意思是一样,并没有什么区别,区别只是名字不同

@Primary:自动装配时当出现多个Bean候选者时,被注解为@Primary的Bean将作为首选者,否则将抛出异常。

@Autowired:Autowired默认先按byType,如果发现找到多个bean,则,又按照byName方式比对,如果还有多个,则报出异常。

@Qualifier:可以手动指定按byName方式注入

@Resource:默认按 byName自动注入,如果找不到再按byType找bean,如果还是找不到则抛异常,无论按byName还是byType如果找到多个,则抛异常。

@Async:基于@Async标注的方法,称之为异步方法,这个注解用于标注某个方法或某个类里面的所有方法都是需要异步处理的,需要与@EnableAsync配合使用。

@Singleton:只要在类上加上这个注解,就可以实现一个单例类,不需要自己手动编写单例实现类。

@NotBlank:检查约束字符串是不是Null还有被Trim的长度是否大于0,只对字符串,且会去掉前后空格.

@Size(min=, max=): 验证对象(Array,Collection,Map,String)长度是否在给定的范围之内

@Email:验证是否是邮件地址,如果为null,不进行验证,算通过验证。

@RequestBody(required=true)::有个默认属性required,默认是true,当body里没内容时抛异常。

@CrossOrigin:是Cross-Origin ResourceSharing(跨域资源共享)的简写,作用是解决跨域访问的问题,在Spring4.2以上的版本可直接使用。在类上或方法上添加该注解

@RequestParam:作用是提取和解析请求中的参数。@RequestParam支持类型转换,类型转换目前支持所有的基本Java类型

@PathVariable:处理requet uri部分,当使用@RequestMapping URI template 样式映射时, 即someUrl/{paramId}, 这时的paramId可通过 @Pathvariable注解绑定它传过来的值到方法的参数上

@RequestHeader,@CookieValue: 处理request header部分的注解将头部信息绑定到方法参数上

@scope:默认是单例模式,即@Scope(“singleton”),singleton:单例,即容器里只有一个实例对象。prototype:多例,request:每有一个request请求,会创建一个实例。

@RestController:@RestController = @Controller + @ResponseBody。是2个注解的合并效果,即指定了该controller是组件,又指定方法返回的是String或json类型数据

@Bean:用于配:Java 8可以直接使用重复注解特性配置多个@ComponentScan)用于扫描包方式配置Bean;

@Aspect切面配置支持,使用Spring Boot引入了AOP启动器的话不需要显式开启

@Transactional (readOnly=true):注解式事务

@SringBootApplication相当于@configuration,@EnableAutoConfiguation @ComponentScan三个注解合用

@EnableDiscoveryclient 自定义服务发现的客服端

@EnableEurekaClient配置本应用将使用服务注册和服务发现,注意:注册和发现用这个注解。

@EnableHystrix表示启动断路器,断路器依赖于服务注册和发现。

@HystrixCommand注解方法失败后,系统将西东切换到fallbackMethod方法执行

@EnableAutoConfiguration spring boot自动配置,尝试根据你添加的jar依赖自动配置你的spring应用。

@FeignClient注解中的fallbank属性指定回调类
都 ·1