【六袆 - Dubbo】Dubbo服务的简单调用;

时间:2022-11-05 09:00:50


这里写目录标题

  • ​​1.Dubbo服务的基本调用过程​​
  • ​​1.1在Java中定义dubbo服务,以interface接口的方式​​
  • ​​1.2 Provider提供服务的具体实现,并声明为dubbo服务​​
  • ​​1.3 Consumer使用dubbo服务​​


1.Dubbo服务的基本调用过程

【六袆 - Dubbo】Dubbo服务的简单调用;


1.1在Java中定义dubbo服务,以interface接口的方式

/**
* 1.在 Java 中 Dubbo 服务就是有一组方法的 Interface 接口,也可以使用语言中立的 Protobuf Buffers IDL 定义服务。
*/
public interface GreetingsService {

String sayHi(String name);
}


1.2 Provider提供服务的具体实现,并声明为dubbo服务

/**
* 2.服务端(Provider)需要提供服务的具体实现,并将其声明为 Dubbo 服务
*/
public class GreetingsServiceImpl implements GreetingsService {
@Override
public String sayHi(String name) {
return "hi, " + name;
}
}


1.3 Consumer使用dubbo服务

public class Application {
private static String zookeeperHost = System
.getProperty("zookeeper.address", "127.0.0.1");
private static String zookeeperPort = System.getProperty("zookeeper.port",
"2181");

public static void main(String[] args) {
//3.服务消费方(Consumer)的视角,通过调用 Dubbo 框架提供的 API 可以获得一个服务代理(stub)对象,然后就可以像使用本地服务一样对服务方法发起调用了。
ReferenceConfig<GreetingsService> reference = new ReferenceConfig<>();
reference.setApplication(new ApplicationConfig("first-dubbo-consumer"));
reference.setRegistry(new RegistryConfig(
"zookeeper://" + zookeeperHost + ":" + zookeeperPort));
reference.setInterface(GreetingsService.class);
GreetingsService service = reference.get();
String message = service.sayHi("dubbo");
System.out.println(message);
}
}