17.Spring Boot統合Duboを遊ぶ
Spring Bootをプレイして集めたDuboです.
Spring Bootを使ってDubboと一体化しています.ここでは注釈を使ってみましたが、簡単に注釈登録サービスを使うのは問題ないです.そこで私は思い切ってコメントを放棄しました.XMLを使っています.ここで紹介するのはDubboxですが、Dubboxを使うなら、基本的に互換性があります.次に、XMLを使う方式とSpring Bootの開発について説明します.
1.作成プロジェクトはpom.xmlに依存を追加します.
作成プロジェクト名:
(1)springbook-dubbo-provide
(2)スプリングブックt-dubbo-appi
(3)スプリングブックt-dubbo-consume
springbook-dubbo-appiプロジェクトは主にいくつかserviceインターフェイスを放して、消費者に使用することを提供します. .springbook-dubbo-provideプロジェクトはサービスを提供するために使われます. springbook-dubbo-consumeプロジェクトは消費者です.springboot-dubbo-provideプロジェクトでpom.xmlを開いて以下の依存性を加えます.完全なコードは以下の通りです.
2.1 springbook-dubbo-provideサービスプロバイダ
(1)springbook-dubbo-provideプロジェクトに入口起動類MainConfigを作成し、完全コードは以下の通りである.
src/main/resourceにフォルダdubboを新規作成し、以下の構成を追加します.
dubbo-provider.xmlの内容は以下の通りです.
ここで私が発表したexampleサービスは一例です.具体的には実際に修正します.
(4)dubbo.propertiesを作成する
(1)入り口起動類MainConfigの作成
src/main/resourceにフォルダdubboを新規作成し、以下の構成を追加します.
dubbo-consume.xmlの内容は以下の通りです.
(4)dubbo.propertiesを作成する
Spring Bootを使ってDubboと統合する場合、Spring Bootが提供するdevtoolsの熱起動を使わないように注意してください.devtoolsは二つのClass Loaderを提供しています.ロードポリシーの問題でエラーが発生し、起動できません.開発に熱負荷が必要なら、Springで提供されるspringloadedを使用します.
興味がある友達はグループをプラスして相互学習を探求することができます.Spring Boot QQ交流群:599546061
Spring Bootを使ってDubboと一体化しています.ここでは注釈を使ってみましたが、簡単に注釈登録サービスを使うのは問題ないです.そこで私は思い切ってコメントを放棄しました.XMLを使っています.ここで紹介するのはDubboxですが、Dubboxを使うなら、基本的に互換性があります.次に、XMLを使う方式とSpring Bootの開発について説明します.
1.作成プロジェクトはpom.xmlに依存を追加します.
作成プロジェクト名:
(1)springbook-dubbo-provide
(2)スプリングブックt-dubbo-appi
(3)スプリングブックt-dubbo-consume
springbook-dubbo-appiプロジェクトは主にいくつかserviceインターフェイスを放して、消費者に使用することを提供します. .springbook-dubbo-provideプロジェクトはサービスを提供するために使われます. springbook-dubbo-consumeプロジェクトは消費者です.springboot-dubbo-provideプロジェクトでpom.xmlを開いて以下の依存性を加えます.完全なコードは以下の通りです.
4.0.0
com.chengli
springboot-dubbo-provide
0.0.1-SNAPSHOT
jar
springboot-dubbo-provide
http://maven.apache.org
org.springframework.boot
spring-boot-starter-parent
1.4.3.RELEASE
UTF-8
1.8
2.5.3
3.4.6
0.1
com.chengli
springboot-dubbo-api
0.0.1-SNAPSHOT
org.springframework.boot
spring-boot-starter
com.alibaba
dubbo
org.springframework
spring
${com.alibaba.dubbo.version}
org.apache.zookeeper
zookeeper
${org.apache.zookeeper.version}
com.github.sgroschupf
zkclient
${com.github.sgroschupf.zkclient.version}
org.springframework.boot
spring-boot-maven-plugin
springbook-dubbo-consumeプロジェクトを開けて、pom.xmlに以下の依存を入れます.完全なコードは以下の通りです.
4.0.0
com.chengli
springboot-dubbo-consume
0.0.1-SNAPSHOT
jar
springboot-dubbo-consume
http://maven.apache.org
org.springframework.boot
spring-boot-starter-parent
1.4.3.RELEASE
UTF-8
1.8
2.5.3
3.4.6
0.1
com.chengli
springboot-dubbo-api
0.0.1-SNAPSHOT
org.springframework.boot
spring-boot-starter-web
com.alibaba
dubbo
org.springframework
spring
${com.alibaba.dubbo.version}
org.apache.zookeeper
zookeeper
${org.apache.zookeeper.version}
com.github.sgroschupf
zkclient
${com.github.sgroschupf.zkclient.version}
org.springframework.boot
spring-boot-configuration-processor
true
org.springframework.boot
spring-boot-maven-plugin
2.Dubo配置2.1 springbook-dubbo-provideサービスプロバイダ
(1)springbook-dubbo-provideプロジェクトに入口起動類MainConfigを作成し、完全コードは以下の通りである.
package com.chengli.springboot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MainConfig {
public static void main(String[] args) {
SpringApplication.run(MainConfig.class, args);
try {
System.in.read();
} catch (Exception e) {
e.printStackTrace();
}
}
}
(2)Dubbo配置類の作成package com.chengli.springboot.dubbo;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.ImportResource;
import org.springframework.context.annotation.PropertySource;
@Configuration
@PropertySource("classpath:dubbo/dubbo.properties")
@ImportResource({ "classpath:dubbo/*.xml" })
public class DubboConfig {
}
(3)Dubboプロファイルの作成src/main/resourceにフォルダdubboを新規作成し、以下の構成を追加します.
dubbo-provider.xmlの内容は以下の通りです.
ここで私が発表したexampleサービスは一例です.具体的には実際に修正します.
(4)dubbo.propertiesを作成する
#
dubbo.application.name=example-provider
#
dubbo.registry.protocol=zookeeper
#
dubbo.registry.address=127.0.0.1:2181
#
dubbo.protocol.name=dubbo
#
dubbo.protocol.port=20880
2.2 springbook-dubbo-consumeサービス消費者(1)入り口起動類MainConfigの作成
package com.chengli.springboot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MainConfig {
public static void main(String[] args) {
SpringApplication.run(MainConfig.class, args);
}
}
(2)Dubbo配置類の作成package com.chengli.springboot.dubbo;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.ImportResource;
import org.springframework.context.annotation.PropertySource;
@Configuration
@PropertySource("classpath:dubbo/dubbo.properties")
@ImportResource({ "classpath:dubbo/*.xml" })
public class DubboConfig {
}
(3)Dubboプロファイルの作成src/main/resourceにフォルダdubboを新規作成し、以下の構成を追加します.
dubbo-consume.xmlの内容は以下の通りです.
(4)dubbo.propertiesを作成する
#
dubbo.application.name=example-consume
#
dubbo.registry.protocol=zookeeper
#
dubbo.registry.address=127.0.0.1:2181
ここまでは基本的にはもう大丈夫ですが、テストクラスのコードは貼り付けません.APIにインターフェースを定義して実装すれば良い.Spring Bootを使ってDubboと統合する場合、Spring Bootが提供するdevtoolsの熱起動を使わないように注意してください.devtoolsは二つのClass Loaderを提供しています.ロードポリシーの問題でエラーが発生し、起動できません.開発に熱負荷が必要なら、Springで提供されるspringloadedを使用します.
興味がある友達はグループをプラスして相互学習を探求することができます.Spring Boot QQ交流群:599546061