1 @Documented
2 @Retention(RetentionPolicy.RUNTIME)
3 @Target({ElementType.FIELD, ElementType.METHOD, ElementType.ANNOTATION_TYPE})
4 public @interface Reference {
5 Class<?> interfaceClass() default void.class;
6
7 String interfaceName() default "";
8
9 String version() default "";
10
11 String group() default "";
12
13 String url() default "";
14
15 String client() default "";
16
17 boolean generic() default false;
18
19 boolean injvm() default false;
20
21 boolean check() default true;
22
23 boolean init() default false;
24
25 boolean lazy() default false;
26
27 boolean stubevent() default false;
28
29 String reconnect() default "";
30
31 boolean sticky() default false;
32
33 String proxy() default "";
34
35 String stub() default "";
36
37 String cluster() default "";
38
39 int connections() default 0;
40
41 int callbacks() default 0;
42
43 String onconnect() default "";
44
45 String ondisconnect() default "";
46
47 String owner() default "";
48
49 String layer() default "";
50
51 int retries() default 0;
52
53 String loadbalance() default "";
54
55 boolean async() default false;
56
57 int actives() default 0;
58
59 boolean sent() default false;
60
61 String mock() default "";
62
63 String validation() default "";
64
65 int timeout() default 0;
66
67 String cache() default "";
68
69 String[] filter() default {};
70
71 String[] listener() default {};
72
73 String[] parameters() default {};
74
75 String application() default "";
76
77 String module() default "";
78
79 String consumer() default "";
80
81 String monitor() default "";
82
83 String[] registry() default {};
84 }
View Code
1 @Documented
2 @Retention(RetentionPolicy.RUNTIME)
3 @Target({ElementType.TYPE})
4 @Inherited
5 public @interface Service {
6 Class<?> interfaceClass() default void.class;
7
8 String interfaceName() default "";
9
10 String version() default "";
11
12 String group() default "";
13
14 String path() default "";
15
16 boolean export() default false;
17
18 String token() default "";
19
20 boolean deprecated() default false;
21
22 boolean dynamic() default false;
23
24 String accesslog() default "";
25
26 int executes() default 0;
27
28 boolean register() default false;
29
30 int weight() default 0;
31
32 String document() default "";
33
34 int delay() default 0;
35
36 String local() default "";
37
38 String stub() default "";
39
40 String cluster() default "";
41
42 String proxy() default "";
43
44 int connections() default 0;
45
46 int callbacks() default 0;
47
48 String onconnect() default "";
49
50 String ondisconnect() default "";
51
52 String owner() default "";
53
54 String layer() default "";
55
56 int retries() default 0;
57
58 String loadbalance() default "";
59
60 boolean async() default false;
61
62 int actives() default 0;
63
64 boolean sent() default false;
65
66 String mock() default "";
67
68 String validation() default "";
69
70 int timeout() default 0;
71
72 String cache() default "";
73
74 String[] filter() default {};
75
76 String[] listener() default {};
77
78 String[] parameters() default {};
79
80 String application() default "";
81
82 String module() default "";
83
84 String provider() default "";
85
86 String[] protocol() default {};
87
88 String monitor() default "";
89
90 String[] registry() default {};
91 }
View Code
@Service dubbo提供者服务用于声明对外暴露服务
1.只能定义在一个类上,表示一个服务的具体实现
2.interfaceClass:指定服务提供方实现的 interface 的类
3.interfaceName:指定服务提供方实现的 interface 的类名
4.version:指定服务的版本号
5.group:指定服务的分组
6.export:是否暴露服务
7.registry:是否向注册中心注册服务
8.application:应用配置
9.module:模块配置
10.provider:服务提供方配置
11.protocol:协议配置
12.monitor:监控中心配置
13.registry:注册中心配置
@Reference 用于dubbo消费者服务指明引用哪个提供者接口服务
1.可以定义在类中的一个字段上,也可以定义在一个方法上,甚至可以用来修饰另一个 annotation,表示一个服务的引用。通常 @Reference 定义在一个字段上
2.interfaceClass:指定服务的 interface 的类
3.interfaceName:指定服务的 interface 的类名
4.version:指定服务的版本号
5.group:指定服务的分组
6.url:通过指定服务提供方的 URL 地址直接绕过注册中心发起调用
7.application:应用配置
8.module:模块配置
9.consumer:服务消费方配置
10.protocol:协议配置
11.monitor:监控中心配置
12.registry:注册中心配置
人生在世,杂事七八;饭要少吃,事要多知;抽个时间,总结一下;乐在分享,自在提升