dubbo(2.7.3) 13.注解配置

简介: dubbo(2.7.3) 13.注解配置

以注解配置的方式来配置你的 Dubbo 应用

提示

需要 2.6.3 及以上版本支持。 点此查看 完整示例[1]

服务提供方

Service注解暴露服务

@Service
public class AnnotationServiceImpl implements AnnotationService {
    @Override
    public String sayHello(String name) {
        return "annotation: hello, " + name;
    }
}

增加应用共享配置

# dubbo-provider.properties
dubbo.application.name=annotation-provider
dubbo.registry.address=zookeeper://127.0.0.1:2181
dubbo.protocol.name=dubbo
dubbo.protocol.port=20880

指定 Spring 扫描路径

@Configuration
@EnableDubbo(scanBasePackages = "org.apache.dubbo.samples.simple.annotation.impl")
@PropertySource("classpath:/spring/dubbo-provider.properties")
static public class ProviderConfiguration {
}

服务消费方

Reference注解引用服务

@Component("annotationAction")
public class AnnotationAction {
    @Reference
    private AnnotationService annotationService;
    public String doSayHello(String name) {
        return annotationService.sayHello(name);
    }
}

增加应用共享配置

# dubbo-consumer.properties
dubbo.application.name=annotation-consumer
dubbo.registry.address=zookeeper://127.0.0.1:2181
dubbo.consumer.timeout=3000

指定 Spring 扫描路径

@Configuration
@EnableDubbo(scanBasePackages = "org.apache.dubbo.samples.simple.annotation.action")
@PropertySource("classpath:/spring/dubbo-consumer.properties")
@ComponentScan(value = {"org.apache.dubbo.samples.simple.annotation.action"})
static public class ConsumerConfiguration {
}

调用服务

public static void main(String[] args) throws Exception {
    AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(ConsumerConfiguration.class);
    context.start();
    final AnnotationAction annotationAction = (AnnotationAction) context.getBean("annotationAction");
    String hello = annotationAction.doSayHello("world");
}

参考资料

[1]

完整示例: https://github.com/apache/dubbo-samples/tree/master/2-advanced/dubbo-samples-annotation


相关文章
|
7月前
|
XML Dubbo 架构师
由浅入深Dubbo核心源码剖析高阶配置运用1
由浅入深Dubbo核心源码剖析高阶配置运用
50 0
|
2月前
|
XML 负载均衡 Dubbo
了解Dubbo配置:优先级、重试和容错机制的秘密【五】
了解Dubbo配置:优先级、重试和容错机制的秘密【五】
37 0
|
7月前
|
负载均衡 Dubbo 算法
由浅入深Dubbo核心源码剖析高阶配置运用2
由浅入深Dubbo核心源码剖析高阶配置运用2
56 0
|
2月前
|
Docker 容器
在docker中安装dubbo-admin,并且阿里云服务器配置
在docker中安装dubbo-admin,并且阿里云服务器配置
135 1
|
4月前
|
Dubbo Java 应用服务中间件
从源码全面解析 dubbo 注解配置的来龙去脉
从源码全面解析 dubbo 注解配置的来龙去脉
|
4月前
|
存储 XML Dubbo
dubbo(2.7.3) 9.动态中心配置
dubbo(2.7.3) 9.动态中心配置
|
4月前
|
XML Dubbo 应用服务中间件
dubbo(2.7.3) 8.XML配置
dubbo(2.7.3) 8.XML配置
|
4月前
|
XML Dubbo Java
Dubbo - 配置示例使用详解
Dubbo - 配置示例使用详解
44 0
|
4月前
|
Dubbo Java 应用服务中间件
微服务框架(三)Dubbo性能调优配置
  此系列文章将会描述Java框架Spring Boot、服务治理框架Dubbo、应用容器引擎Docker,及使用Spring Boot集成Dubbo、Mybatis等开源框架,其中穿插着Spring Boot中日志切面等技术的实现,然后通过gitlab-CI以持续集成为Docker镜像。   本文为服务治理框架Dubbo的特性及泛化实现
|
5月前
|
缓存 Dubbo Java
Dubbo配置注册中心设置application的name使用驼峰命名法可能存在的隐藏启动异常问题
Dubbo配置注册中心设置application的name使用驼峰命名法可能存在的隐藏启动异常问题
40 0