不管是XML配置还是注解方式,最终都会转换成java api对应的配置对象。
provider:
import com.alibaba.dubbo.config.ApplicationConfig;
import com.alibaba.dubbo.config.RegistryConfig;
import com.alibaba.dubbo.config.ServiceConfig;
import facade.EchoService;
import java.io.IOException;
public class EchoProviderBasedApi {
public static void main(String[] args) throws IOException {
ServiceConfig<EchoService> service = new ServiceConfig<EchoService>();
service.setApplication(new ApplicationConfig("java-echo-provider"));
service.setRegistry(new RegistryConfig("zookeeper://127.0.0.1:2181"));
service.setInterface(EchoService.class);
service.setRef(new EchoServiceImpl());
service.export();
System.out.println("java-echo-provider is running");
System.in.read();
}
}
api:
import com.alibaba.dubbo.config.ApplicationConfig;
import com.alibaba.dubbo.config.ReferenceConfig;
import com.alibaba.dubbo.config.RegistryConfig;
import facade.EchoService;
public class EchoConsumerBasedApi {
public static void main(String[] args) {
ReferenceConfig<EchoService> reference=new ReferenceConfig<EchoService>();
reference.setApplication(new ApplicationConfig("java-echo-consumer"));
reference.setInterface(EchoService.class);
reference.setRegistry(new RegistryConfig("zookeeper://127.0.0.1:2181"));
EchoService service=reference.get();
String message=service.echo("hello world");
System.out.println(message);
}
}