SpringBootとDubboの統合の3つの方法
何気なく巨牛の人工知能のチュートリアルを見つけて、思わず共有してあげました.教程は基礎がゼロで、分かりやすくて、しかもとても面白くてユーモアがあって、小説を読むようです!すごいと思って、みんなに分かち合いました.ここをクリックするとチュートリアルにジャンプできます.
先行条件(インポート依存)
(1)、dubbo-starterのインポート
(2)、dubbo導入のその他の依存
一、dubbo-starter依存を導入し、アプリケーションで.propertiesまたはapplication.ymlは属性を構成し、@Service【露出サービス】、@Reference【参照サービス】を使用する.
【SpringBoot起動クラスに
二、dubbo xmlプロファイル(provider.xmlまたはconsumer.xml)を保持する.
dubbo-starter依存をインポートし、SpringBoot起動クラスに
三、注釈APIの使用方法:
(1)、各コンポーネントを手動でコンテナに作成し、dubboに他のコンポーネントをスキャンさせる.
(2)、SpringBoot起動クラスでdubboのスキャンパスを指定する
先行条件(インポート依存)
(1)、dubbo-starterのインポート
<dependency>
<groupId>com.alibaba.bootgroupId>
<artifactId>dubbo-spring-boot-starterartifactId>
<version>0.2.0version>
dependency>
(2)、dubbo導入のその他の依存
SpringBoot
とdubbo
を統合する3つの方法:一、dubbo-starter依存を導入し、アプリケーションで.propertiesまたはapplication.ymlは属性を構成し、@Service【露出サービス】、@Reference【参照サービス】を使用する.
【SpringBoot起動クラスに
@EnableDubbo
を追加して注記ベースのdubbo機能をオンにする必要がある】構成例:# :
#
dubbo.application.name=dubbo-provider
#
dubbo.registry.address=xx.xx.xx.xx:2181
dubbo.registry.protocol=zookeeper
# dubbo , 8001
dubbo.protocol.name=dubbo
dubbo.protocol.port=8001
#
dubbo.scan.base-packages=com.wangcw.dubbo.provider
# :
dubbo.application.name=dubbo-consumer
dubbo.protocol.name=dubbo
dubbo.registry.protocol=zookeeper
dubbo.registry.address=xx.xx.xx.xx:2181
dubbo.scan.base-packages=com.wangcw.duboo.consumer
二、dubbo xmlプロファイル(provider.xmlまたはconsumer.xml)を保持する.
dubbo-starter依存をインポートし、SpringBoot起動クラスに
@ImportResource
注記を使用してdubboのプロファイルをインポートすればよい. @ImportResource(locations="classpath:provider.xml")`
三、注釈APIの使用方法:
(1)、各コンポーネントを手動でコンテナに作成し、dubboに他のコンポーネントをスキャンさせる.
@Configuration
public class MyDubboConfig {
/* */
@Bean
public ApplicationConfig applicationConfig() {
ApplicationConfig applicationConfig = new ApplicationConfig();
applicationConfig.setName("boot-user-service-provider");
return applicationConfig;
}
/* */
@Bean
public RegistryConfig registryConfig() {
RegistryConfig registryConfig = new RegistryConfig();
registryConfig.setProtocol("zookeeper");
registryConfig.setAddress("127.0.0.1:2181");
return registryConfig;
}
/* */
@Bean
public ProtocolConfig protocolConfig() {
ProtocolConfig protocolConfig = new ProtocolConfig();
protocolConfig.setName("dubbo");
protocolConfig.setPort(20882);
return protocolConfig;
}
/**
*/
@Bean
public ServiceConfig<UserService> userServiceConfig(UserService userService){
ServiceConfig<UserService> serviceConfig = new ServiceConfig<>();
serviceConfig.setInterface(UserService.class);
serviceConfig.setRef(userService);
serviceConfig.setVersion("1.0.0");
// method
MethodConfig methodConfig = new MethodConfig();
methodConfig.setName("getUserAddressList");
methodConfig.setTimeout(1000);
// method service
List<MethodConfig> methods = new ArrayList<>();
methods.add(methodConfig);
serviceConfig.setMethods(methods);
//MonitorConfig...
return serviceConfig;
}
}
(2)、SpringBoot起動クラスでdubboのスキャンパスを指定する
@EnableDubbo(scanBasePackages="com.xxxx.xxxxx")