1、2.7.7 以前是 @Reference 现在 2.7.7 是 @DubboReference 注解的作用访问zk中的url,做获取统一资源路径,做创建代理对象
2、提取 提供者和消费者的 api
3、编写消费者的代码
4、duboo的作用
1、把服务端provider 注册到注册中心,把url存在到zk中
2、访问注册中心,获取URL地址、并创建代理创建对象
5、
1、编写service方法
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>2.7.8</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-framework</artifactId>
<version>4.0.1</version>
</dependency>
<!-- 链接zk的 -->
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-recipes</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>com.nuc</groupId>
<artifactId>dubbo-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
2、编写service方法
@Service
public class SayHelloServiceImpl implements SayInterface {
@Reference //2.7.7 以前
@DubboReference // 2.2,7 以后使用这个注解
private SayInterface sayInterface;
@Override
public String sayHello(String name) {
String s = sayInterface.sayHello(name);
System.out.println(s);
return s;
}
}
3、控制层
@Controller
public class DemoController {
@Autowired
private SayInterface sayInterface;
@RequestMapping("/hello")
@ResponseBody
public String sayHello() {
String wang = sayInterface.sayHello("wang");
System.out.println(wang);
return wang;
}
}
4、配置文件
#注册中心的地址 http://192.168.181.138:2181/
dubbo.registry.address=zookeeper://192.168.181.138:2181
#定义名称
dubbo.application.name=dubbo-consumer
server.port=80
5、访问地址