gradle clean install uploadArchives
compile "jthink:spring-boot-starter-dubbox:0.0.1"
- spring.service.dubbo.registry.name=xxx
- spring.service.dubbo.registry.address=ip1:2181,ip2:2181,ip3:2181
- spring.service.dubbo.registry.check=true
- spring.service.dubbo.registry.register=true
- spring.service.dubbo.registry.protocol=zookeeper
- spring.service.dubbo.registry.retries=0
- spring.service.dubbo.registry.timeout=60000
- spring.service.dubbo.registry.protocolName=dubbo
- spring.service.dubbo.registry.payload=10485760
将 上述 配置 项赋予 正 确的值接 口 定 义
public interface ServiceE {
public String invokeE();
}
服 务实现
@Service
public class ServiceEImpl implements ServiceE {
private static final Logger LOGGER = LoggerFactory.getLogger(ServiceEImpl.class);
@Override
public String invokeE() {
LOGGER.info("调用服 务E");
return "E";
}
}
暴露 服 务
@Configuration
public class DubboConfiguration {
@Autowired
private DubboService dubboService;
@Autowired
private ServiceE serviceEImpl;
@PostConstruct
public void exportDubboService() {
this.dubboService.export(ServiceE.class, this.serviceEImpl);
}
}
将 上述 配置 项赋予 正 确的值(最 后 两项配置 项无需配置 )服 务引用
@Configuration
public class DubboConfiguration {
@Autowired
private DubboService dubboService;
@Bean
public ServiceE serviceE() {
return this.dubboService.get(ServiceE.class);
}
}
服 务调用
@Service
public class ServiceCImpl implements ServiceC {
private static final Logger LOGGER = LoggerFactory.getLogger(ServiceCImpl.class);
@Autowired
private ServiceE serviceE;
@Override
public String invokeC() {
LOGGER.info("调用服 务E");
return this.serviceE.invokeE();
}
}