
Dubbo学习之简单的demo(注解版)
发布日期:2021-05-07 08:41:14
浏览次数:22
分类:精选文章
本文共 2178 字,大约阅读时间需要 7 分钟。
当前环境:与上面的xml版的一致
1.声明
当前项目的父项目都是xml配置版的,DubboParentDemo
2.创建子项目dubbo-annotation-provider
2.1 添加依赖
dubbo-api dubbo-api 0.0.1-SNAPSHOT
2.2 创建配置文件dubbo-provider.properties
dubbo.application.name=annotation-providerdubbo.registry.address=zookeeper://192.168.133.129:2181dubbo.protocol.name=dubbodubbo.protocol.port=20880
2.3 创建服务实现类
/** * @description 创建服务实现类 * @author hy * @date 2019-10-07 */@Service//这里需要使用Dubbo的@Service注解public class DemoServiceImpl implements DemoService { @Override public String say(String context) { return "Hello "+context+" !"; }}
2.4 创建Provider类
/** * @description 使用注解的方式配置dubbo--服务提供端 * @author hy * @date 2019-10-07 */@Configuration@EnableDubbo(scanBasePackages = "com.hy.dubbo.annotation.provider.dao.impl")//扫描添加了@Service的注解@PropertySource("classpath:dubbo-provider.properties")//配置文件的扫描public class Provider { public static void main(String[] args) throws IOException { AnnotationConfigApplicationContext context=new AnnotationConfigApplicationContext(Provider.class); context.start(); System.in.read(); //需要等待 }}
3.创建子项目dubbo-annotation-customer
3.1 添加依赖
dubbo-api dubbo-api 0.0.1-SNAPSHOT
3.2 添加dubbo-customer.properties文件
dubbo.application.name=annotation-consumerdubbo.registry.address=zookeeper://192.168.133.129:2181dubbo.consumer.timeout=3000
3.3 创建Customer类
/** * @description 使用注解的方式创建dubbo项目--客户端 * @author hy * @date 2019-10-07 */@Configuration@EnableDubbo(scanBasePackages = "com.hy.dubbo.annotation.customer")//启用Dubbo扫描并注入对象@PropertySource("classpath:dubbo-customer.properties")//扫描配置文件public class Customer { @Reference DemoService demoService;//这里需要使用Dubbo来进行注入 public static void main(String[] args) { AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(Customer.class); Customer customer = context.getBean(Customer.class); String say = customer.demoService.say("World"); System.out.println(say); }}
4.测试
先启动Provider类,再启动Customer类
结果与前面的xml和java版的完全一致5.总结
1.使用dubbo注解的时候需要使用@Service
和@Reference
注解分别标注:Service实现类
和客户端使用的接口
2.当前的dubbo注解版依赖于Spring的IOC容器
以上纯属个人见解,如有问题请联系本人!
发表评论
最新留言
表示我来过!
[***.240.166.169]2025年04月19日 13时31分49秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
技术美术面试问题整理
2021-05-08
C++学习记录 五、C++提高编程(2)
2021-05-08
ORB-SLAM2:LoopClosing线程学习随笔【李哈哈:看看总有收获篇】
2021-05-08
js求阶乘
2021-05-08
Nginx---惊群
2021-05-08
项目中常用的审计类型概述
2021-05-08
(九)实现页面底部购物车的样式
2021-05-08
python-day3 for语句完整使用
2021-05-08
ButterKnife使用问题
2021-05-08
为什么讨厌所谓仿生AI的说法
2021-05-08
ORACLE 客户端工具
2021-05-08
基于LabVIEW的入门指南
2021-05-08
weblogic之cve-2015-4852
2021-05-08
Java注释
2021-05-08
C++ 函数重载
2021-05-08
.NET微信网页开发之使用微信JS-SDK调用微信扫一扫功能
2021-05-08
使用mybatis-generator生成底层
2021-05-08
Mybatis【5】-- Mybatis多种增删改查那些你会了么?
2021-05-08