一.总共分为三个目录:
dubbo-api 服务的接口用于对接客户端和服务端
dubbo-client 客户端配置文件为:consumer.xml
dubbo-service 服务端配置文件为:provide.xml
二.配置文件
1.consumer.xml:
2.provide.xml:
ref="testService">
3pom文件:
org.springframework.boot
spring-boot-starter-web
com.dubbo.api
dubbo-api
0.0.1-SNAPSHOT
com.alibaba
dubbo
2.5.3
org.springframework
spring
org.apache.zookeeper
zookeeper
3.4.6
org.slf4j
slf4j-log4j12
log4j
log4j
com.github.sgroschupf
zkclient
0.1
4. 服务的接口
/**
* @Title: TestService.java
* @Description:
* @author lsc
* @date 2018年8月17日
* @version 1.0
* @Copyright:Copyright Taikanglife.All Rights Reserved*/package com.dubbo.api.rpc;/**
* @ClassName: TestService
* @Description:
* @author: lsc
* @date: 2018年8月17日 上午10:03:28
* @Copyright:Copyright Taikanglife.All Rights Reserved*/
public interfaceTestService {publicString sayHello();
}
5.服务的实现
package com.dubbo.dubbo;
import org.springframework.stereotype.Service;
import com.dubbo.api.rpc.TestService;/**
* @ClassName: TestServiceImpl
* @Description:
* @author: lsc
* @date: 2018年8月17日 上午10:24:11
* @Copyright:Copyright Taikanglife.All Rights Reserved*/@Service("testService")public classTestServiceImpl implements TestService {
@OverridepublicString sayHello() {return "hello dubbo";
}
}
6.服务的调用
package com.dubbo.dubboclient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.dubbo.api.rpc.TestService;/**
* @ClassName: MyController
* @Description:
* @author: lsc
* @date: 2018年8月17日 上午10:24:56
* @Copyright:Copyright Taikanglife.All Rights Reserved*/@RestControllerpublic classMyController {
@AutowiredprivateTestService testService;
@RequestMapping("/home")publicString home(){returntestService.sayHello();
}
}