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:注册中心配置
12-28 21:15
查看更多