dubbo版本2.8.4,springboot版本2.x
引入依赖
- dubbo-spring-boot-starter,dubbo的启动依赖
- dubbo依赖。可根据dubbo服务提供者的版本进行更改,需要在dubbo-spring-boot-starter中将dubbo依赖排除
- zkclient。zookeeper相关依赖,如不想使用自带依赖版本,则可排除zookeeper依赖,引入所需版本的zookeeper依赖
- 服务提供者jar包
<dependency>
<groupId>com.alibaba.spring.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>2.0.0</version>
<exclusions>
<!--去除dubbo依赖-->
<exclusion>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
</exclusion>
<!-- 与elastic-job jar包冲突-->
<exclusion>
<groupId>org.apache.curator</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--使用和平台相同的老版本dubbo-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>2.8.4</version>
<exclusions>
<!-- 与elastic-job jar包冲突-->
<exclusion>
<groupId>org.apache.curator</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.github.sgroschupf</groupId>
<artifactId>zkclient</artifactId>
<version>0.1</version>
<exclusions>
<exclusion>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.act.platform.rpc</groupId>
<artifactId>act-platform-rpc-api</artifactId>
<version>1.0.0.0</version>
</dependency>
添加配置
yaml配置文件
spring:
dubbo:
application:
name: act-model-web
protocol:
name: dubbo
registry:
address: zookeeper://127.0.0.1:48889
启动类
启动类添加@EnableDubboConfiguration注解
使用
在controller中用@Reference注解引入依赖,即可直接调用
@Controller
@RequestMapping("/sso")
public class DubboController {
@Reference(check = false)
private SsoService ssoService;
@PostMapping(value = "/index")
public void index(HttpServletRequest request, HttpServletResponse response) throws IOException {
String ticket = request.getParameter("ticket");
log.info("ticket------>" + ticket);
//dubbo服务远程调用
SsoVo result = ssoService.initSub(ticket);
System.out.println(request.toString());
}
}