Dubbo入门demo

服务端目录结构


image.png

api

maven

dubbo-server
com.sjx.dubbo
1.0-SNAPSHOT

4.0.0
com.sjx.dubbo.api
dubbo-api


/**
 * @author: sjx
 * @description: 定义接口
 */
public interface ISayHello {
     String sayHello(String msg);
}

provider

maven


com.sjx.dubbo.api
dubbo-api
1.0-SNAPSHOT


com.alibaba
dubbo
2.5.3


org.apache.zookeeper
zookeeper
3.4.9


com.101tec
zkclient
0.10

配置: dubbo-server.xml



    
    
    
    
    
    
    
    

    


接口实现

public class SayHelloImpl implements ISayHello {
    public String sayHello(String msg) {
        return "Hello:" + msg;
    }
}
加载配置文件,启动server
public class Bootstrap {
    public static void main(String[] args) throws Exception {
        ClassPathXmlApplicationContext pathXmlApplicationContext =
                new ClassPathXmlApplicationContext("dubbo-server.xml");
        pathXmlApplicationContext.start();
        System.in.read();
    }
}

客户端

maven



com.sjx.dubbo.api
dubbo-api
1.0-SNAPSHOT


com.alibaba
dubbo
2.5.3


org.apache.zookeeper
zookeeper
3.4.9


com.101tec
zkclient
0.10

配置:dubbo-client.xml



    
    
    
    

    
    


启动客户端

public class DubboClient {
    public static void main(String[] args) {
        ClassPathXmlApplicationContext pathXmlApplicationContext =
                new ClassPathXmlApplicationContext("dubbo-client.xml");
        //得到ISayHello 的远程代理对象
        ISayHello iSayHello = (ISayHello) pathXmlApplicationContext.getBean("iSayHello");
        System.out.println(iSayHello.sayHello("dubbo"));
    }
}

结果

image.png

你可能感兴趣的:(Dubbo入门demo)