-
启动zookeeper !
-
IDEA创建一个空项目;
3.创建一个模块,实现服务提供者:provider-server , 选择web依赖即可
4.项目创建完毕,我们写一个服务,比如卖票的服务;
目录结构
接口:
package com.hua.service;
public interface TicketService {
String getTicket();
}
实现
package com.hua.service;
import org.apache.dubbo.config.annotation.Service;
import org.springframework.stereotype.Component;
//zookerper注册发现
@Service //可以被扫描到,在项目一启动就注册到注册中心
@Component//使用dubbo后尽量不要使用service注解,容易错这里必须是Double的service
public class TicketServiceImpl implements TicketService {
@Override
public String getTicket() {
return "华闻";
}
}
5.创建一个模块,实现服务消费者:consumer-server , 选择web依赖即可
package com.hua.service;
import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.stereotype.Service;
@Service//这个是放入容器
public class UserService {
//去注册中心拿服务
@DubboReference //方法1.pom坐标2定义路劲相同的接口名 如下
TicketService ticketService;
public void buyTicket() {
String ticket = ticketService.getTicket();
System.out.println("我去注册中心得到票"+ticket);
}
}
//不写了 直接去参照狂神
https://blog.csdn.net/qq_33369905/article/details/106647287
服务提供者
1、将服务提供者注册到注册中心,我们需要整合Dubbo和zookeeper,所以需要导包
我们从dubbo官网进入github,看下方的帮助文档,找到dubbo-springboot,找到依赖包
org.apache.dubbo dubbo-spring-boot-starter 2.7.3 zookeeper的包我们去maven仓库下载,zkclient; com.github.sgroschupf zkclient 0.1 【新版的坑】zookeeper及其依赖包,解决日志冲突,还需要剔除日志依赖; org.apache.curator curator-framework 2.12.0 org.apache.curator curator-recipes 2.12.0 org.apache.zookeeper zookeeper 3.4.14 org.slf4j slf4j-log4j12 2、在springboot配置文件中配置dubbo相关属性!#当前应用名字
dubbo.application.name=provider-server
#注册中心地址
dubbo.registry.address=zookeeper://127.0.0.1:2181
#扫描指定包下服务
dubbo.scan.base-packages=com.kuang.provider.service
3、在service的实现类中配置服务注解,发布服务!注意导包问题
import org.apache.dubbo.config.annotation.Service;
import org.springframework.stereotype.Component;
@Service //将服务发布出去
@Component //放在容器中
public class TicketServiceImpl implements TicketService {
@Override
public String getTicket() {
return “《狂神说Java》”;
}
}
逻辑理解 :应用启动起来,dubbo就会扫描指定的包下带有@component注解的服务,将它发布在指定的注册中心中!
服务消费者
1、导入依赖,和之前的依赖一样;
#当前应用名字
dubbo.application.name=consumer-server
#注册中心地址
dubbo.registry.address=zookeeper://127.0.0.1:2181
原文链接:https://blog.csdn.net/qq_33369905/article/details/106647287



