SpringBoot を使用してフィボナッチの n 項を実装する Dubbo プロジェクトを構築する方法

WBOY
リリース: 2023-05-17 23:58:10
転載
931 人が閲覧しました
    #step1 新しいプロジェクトを作成する

    方法 1: 次のように、IDEA で新しいプロジェクトを直接作成します。

    SpringBoot を使用してフィボナッチの n 項を実装する Dubbo プロジェクトを構築する方法

    ## 方法 2: start.spring.io に新しい

    SpringBoot を使用してフィボナッチの n 項を実装する Dubbo プロジェクトを構築する方法

    を作成します。最初の方法のサーバー URL が 2 番目の Web サイトであることに気づいた子供もいるかもしれません。

    2 つの新しいプロジェクトを作成するには、最初のプロジェクトは上の図に示すとおりで、2 番目のプロジェクトはプロバイダーをコンシューマーに変更するだけです

    残りは変更されません。解凍後、IDEA を通じて開きます

    step2 必要なパッケージ、インターフェイス、実装クラスを作成します

    プロバイダー プロジェクトの構造:

    SpringBoot を使用してフィボナッチの n 項を実装する Dubbo プロジェクトを構築する方法

    コンシューマー プロジェクト構造:

    SpringBoot を使用してフィボナッチの n 項を実装する Dubbo プロジェクトを構築する方法# プロジェクト内の 2 つの ServiceAPI の場所、またはパッケージ名は厳密に一致している必要があることに注意してください。一致していないと、後で問題が発生します

    矛盾している場合は、必要に応じて次のように押すことができます。

    SpringBoot を使用してフィボナッチの n 項を実装する Dubbo プロジェクトを構築する方法xsd を変更し、指定されたディレクトリに配置します:

    C :\Users\username\.lemminx\cache\http\code.alibabatech.com\schema\dubbo

    File:

    dubbo.xsd

    #step3 2 つのプロジェクトのリソースの下に新しい構成ファイルを作成します。

    作成する必要がある名前は次のとおりです。

    spring-dubbo.xml

    プロバイダーの構成ファイル内

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans.xsd
    	   http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
        <!-- dubbo应用名称 -->
        <dubbo:application name="springboot-buddo-provider"/>
        <!-- 发布者 dubbo协议  -->
        <dubbo:protocol name="dubbo" port="20881"/>
        <!-- 定义bean -->
        <bean id="providerImpl" class="com.springdubbo.demo.springbootdubbo.apiImpl.ProviderImpl"/>
        <!-- dubbo服务 发布者发布服务  需要暴露的服务接口 -->
        <dubbo:service interface="com.springdubbo.demo.springbootdubbo.ServiceAPI" ref="providerImpl"
                       registry="N/A"/>
    </beans>
    ログイン後にコピー

    step4 コードの記述

    依存関係のインポート

    依存関係を pom.xml に追加します。両方のプロジェクトの:

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans.xsd
    	   http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
        <!-- dubbo应用名称 -->
        <dubbo:application name="springboot-buddo-consumer"/>
        <!-- 远程服务调用代理 -->
        <dubbo:reference id="consumerImpl"
                         interface="com.springdubbo.demo.springbootdubbo.ServiceAPI"
                         url="dubbo://localhost:20881" />
    </beans>
    ログイン後にコピー

    provider

    ProviderImpl

    Service アノテーションを追加することを忘れないでください。これは dubbo の Service である必要があります。 <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:xml;">&lt;dependency&gt; &lt;groupId&gt;com.alibaba.spring.boot&lt;/groupId&gt; &lt;artifactId&gt;dubbo-spring-boot-starter&lt;/artifactId&gt; &lt;version&gt;2.0.0&lt;/version&gt; &lt;/dependency&gt;</pre><div class="contentsignin">ログイン後にコピー</div></div>

    ServiceAPI

    package com.springdubbo.demo.springbootdubbo.apiImpl;
    import com.alibaba.dubbo.config.annotation.Service;
    import com.springdubbo.demo.springbootdubbo.ServiceAPI;
    /**
     * @author wuyt
     * @data 2022/6/11
     * @apiNote
     */
    @Service
    public class ProviderImpl implements ServiceAPI {
        public String getMessage(String message) {
            return "springboot-dubbo-provider  =>>>>>" + message;
        }
        public String getTheFeibN(int n) {
            //斐波那契数列第n项的实现逻辑
        }
    }
    ログイン後にコピー

    SpringbootDubboApplication

    ImportResource アノテーションを必ず追加してください<div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:java;">package com.springdubbo.demo.springbootdubbo; /** * @author wuyt * @data 2022/6/11 * @apiNote */ public interface ServiceAPI { public String getMessage(String message); public String getTheFeibN(int n); }</pre><div class="contentsignin">ログイン後にコピー</div></div><div class="contentsignin">ログイン後にコピー</div></div>consumer

    ServiceAPI

    package com.springdubbo.demo.springbootdubbo;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.context.annotation.ImportResource;
    @SpringBootApplication
    @ImportResource("classpath:spring-dubbo.xml")
    public class SpringbootDubboApplication {
        public static void main(String[] args) {
            SpringApplication.run(SpringbootDubboApplication.class, args);
        }
    }
    ログイン後にコピー

    SpringbootDuboApplication

    <div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:java;">package com.springdubbo.demo.springbootdubbo; /** * @author wuyt * @data 2022/6/11 * @apiNote */ public interface ServiceAPI { public String getMessage(String message); public String getTheFeibN(int n); }</pre><div class="contentsignin">ログイン後にコピー</div></div><div class="contentsignin">ログイン後にコピー</div></div>

    ポート競合の変更プロバイダーまたはコンシューマーのポート番号を変更できます

    ここで実行中のコンシューマのポート番号を変更します:

    step5 実行

    SpringBoot を使用してフィボナッチの n 項を実装する Dubbo プロジェクトを構築する方法最初にプロバイダを実行し、次にコンシューマを実行します## ####結果: ############

    以上がSpringBoot を使用してフィボナッチの n 項を実装する Dubbo プロジェクトを構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    関連ラベル:
    ソース:yisu.com
    このウェブサイトの声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    人気のチュートリアル
    詳細>
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート