Inhaltsverzeichnis
1. Beschreibung
2.3 通过protobuf生成Java代码
Heim Java javaLernprogramm So integrieren Sie Maven GrPC in die Springboot-Demo

So integrieren Sie Maven GrPC in die Springboot-Demo

May 13, 2023 pm 01:01 PM
grpc maven springboot

    1. Beschreibung

    GRPC definiert die Schnittstelle basierend auf Protobuf. Unterteilt in Serverseite und Clientseite. Die Serverseite stellt die Schnittstellenimplementierung bereit, und der Client erhält die erwarteten Daten durch Aufrufen der serverseitigen Schnittstelle.

    2. Öffentlicher Teil Abhängigkeitskoordinaten)

            <dependency>
                <groupId>net.devh</groupId>
                <artifactId>grpc-spring-boot-starter</artifactId>
                <version>2.12.0.RELEASE</version>
            </dependency>
            <dependency>
                <!-- Java 9+ compatibility -->
                <groupId>javax.annotation</groupId>
                <artifactId>javax.annotation-api</artifactId>
            </dependency>
    Nach dem Login kopieren

    2.2 Proto-Abhängigkeitsdatei hinzufügen

    Fügen Sie das Verzeichnis src/main/proto hinzu, setzen Sie das Verzeichnis auf Source Root und fügen Sie dann das Verzeichnis < hinzu code>src/main/proto Fügen Sie die Datei hello.proto unter hinzu. Der Inhalt lautet wie folgt

    <plugin>
                    <!--                    protobuf生成插件-->
                    <groupId>org.xolstice.maven.plugins</groupId>
                    <artifactId>protobuf-maven-plugin</artifactId>
                    <version>0.6.1</version>
                    <configuration>
                        <protocArtifact>com.google.protobuf:protoc:3.17.3:exe:${os.detected.classifier}
                        </protocArtifact>
                        <pluginId>grpc-java</pluginId>
                        <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.39.0:exe:${os.detected.classifier}
                        </pluginArtifact>
                        <!--默认值-->
                        <protoSourceRoot>${project.basedir}/src/main/proto</protoSourceRoot>
                        <outputDirectory>${project.basedir}/src/main/java</outputDirectory>
                        <clearOutputDirectory>false</clearOutputDirectory>
                    </configuration>
                    <executions>
                        <execution>
                            <goals>
                                <goal>compile</goal>
                                <goal>compile-custom</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
    Nach dem Login kopieren

    2.3 Generieren Sie Java-Code über protobuf

    Nachdem das Plug-In erfolgreich importiert wurde , klicken Sie auf den im Bild unten ausgewählten protobuf:compile</code > und <code>protbuf:compile-custom generiert nacheinander den entsprechenden Java-Code (d. h. den Schnittstellenabhängigkeitscode)

    src/main/proto,并将目录设置为Source Root,然后在目录src/main/proto下添加文件hello.proto,内容如下

    syntax = "proto3"; //指定proto版本
    package com.server;
    // 生成的Java代码的包名
    option java_package = "com.grpc.server";
    // 请求参数
    message HelloReq{
        string name = 1;
    }
    // 返回参数
    message HelloResp{
        string ret = 1;
    }
    // rpc service
    service HelloService{
    	// service中需要进行调用的具体方法
        rpc hello(HelloReq) returns (HelloResp){}
    }
    Nach dem Login kopieren

    2.3 通过protobuf生成Java代码

    插件导入成功后,点击下图选中的protobuf:compileprotbuf:compile-custom

    So integrieren Sie Maven GrPC in die Springboot-Demo3. Die spezifische Implementierung des serverseitigen Schnittstellen-Servicecodes lautet wie folgt:

    import io.grpc.stub.StreamObserver;
    import net.devh.boot.grpc.server.service.GrpcService;
    @GrpcService
    public class HelloService extends HelloServiceGrpc.HelloServiceImplBase {
        @Override
        public void hello(Hello.HelloReq request, StreamObserver<Hello.HelloResp> responseObserver) {
            Hello.HelloResp resp = Hello.HelloResp.newBuilder().setRet("你好-->"+request.getName()).build();
            responseObserver.onNext(resp);
            responseObserver.onCompleted();
        }
    }
    Nach dem Login kopieren

    Das obige ist der detaillierte Inhalt vonSo integrieren Sie Maven GrPC in die Springboot-Demo. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

    Heiße KI -Werkzeuge

    Undresser.AI Undress

    Undresser.AI Undress

    KI-gestützte App zum Erstellen realistischer Aktfotos

    AI Clothes Remover

    AI Clothes Remover

    Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

    Undress AI Tool

    Undress AI Tool

    Ausziehbilder kostenlos

    Clothoff.io

    Clothoff.io

    KI-Kleiderentferner

    Video Face Swap

    Video Face Swap

    Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

    Heiße Werkzeuge

    Notepad++7.3.1

    Notepad++7.3.1

    Einfach zu bedienender und kostenloser Code-Editor

    SublimeText3 chinesische Version

    SublimeText3 chinesische Version

    Chinesische Version, sehr einfach zu bedienen

    Senden Sie Studio 13.0.1

    Senden Sie Studio 13.0.1

    Leistungsstarke integrierte PHP-Entwicklungsumgebung

    Dreamweaver CS6

    Dreamweaver CS6

    Visuelle Webentwicklungstools

    SublimeText3 Mac-Version

    SublimeText3 Mac-Version

    Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

    Heiße Themen

    Java-Tutorial
    1664
    14
    PHP-Tutorial
    1266
    29
    C#-Tutorial
    1239
    24
    Weiterentwicklung des Java-Maven-Build-Tools: Kompilierungsgeschwindigkeit und Abhängigkeitsmanagement optimieren Weiterentwicklung des Java-Maven-Build-Tools: Kompilierungsgeschwindigkeit und Abhängigkeitsmanagement optimieren Apr 17, 2024 pm 06:42 PM

    Optimieren Sie die Maven-Build-Tools: Optimieren Sie die Kompilierungsgeschwindigkeit: Nutzen Sie die Vorteile der parallelen Kompilierung und der inkrementellen Kompilierung. Optimieren Sie Abhängigkeiten: Analysieren Sie Abhängigkeitsbäume und verwenden Sie Stücklisten (Bill of Materials), um transitive Abhängigkeiten zu verwalten. Praktischer Fall: Veranschaulichen Sie die Optimierung der Kompilierungsgeschwindigkeit und des Abhängigkeitsmanagements anhand von Beispielen.

    Wie verwende ich gRPC, um das Hochladen von Dateien in Golang zu implementieren? Wie verwende ich gRPC, um das Hochladen von Dateien in Golang zu implementieren? Jun 03, 2024 pm 04:54 PM

    Wie implementiert man den Datei-Upload mit gRPC? Erstellen Sie unterstützende Servicedefinitionen, einschließlich Anforderungs- und Antwortnachrichten. Auf dem Client wird die hochzuladende Datei geöffnet, in Blöcke aufgeteilt und dann über einen gRPC-Stream an den Server gestreamt. Auf der Serverseite werden Dateiblöcke empfangen und in einer Datei gespeichert. Der Server sendet nach Abschluss des Datei-Uploads eine Antwort, um anzugeben, ob der Upload erfolgreich war.

    Vermeiden Sie häufige Fehler bei der Konfiguration der Maven-Umgebung: Lösen Sie Konfigurationsprobleme Vermeiden Sie häufige Fehler bei der Konfiguration der Maven-Umgebung: Lösen Sie Konfigurationsprobleme Feb 19, 2024 pm 04:56 PM

    Maven ist ein Java-Projektmanagement- und Build-Tool, das häufig bei der Entwicklung von Java-Projekten verwendet wird. Bei der Verwendung von Maven zum Erstellen von Projekten treten häufig häufige Probleme bei der Umgebungskonfiguration auf. In diesem Artikel werden diese häufig gestellten Fragen beantwortet und spezifische Codebeispiele bereitgestellt, um den Lesern dabei zu helfen, häufige Konfigurationsfehler zu vermeiden. 1. Maven-Umgebungsvariablen sind falsch konfiguriert. Problembeschreibung: Wenn die Umgebungsvariablen bei Verwendung von Maven falsch konfiguriert sind, funktioniert Maven möglicherweise nicht richtig. Lösung: Stellen Sie sicher

    Leitfaden zum Einrichten lokaler Maven-Bibliotheken: Projektabhängigkeiten effizient verwalten Leitfaden zum Einrichten lokaler Maven-Bibliotheken: Projektabhängigkeiten effizient verwalten Feb 19, 2024 am 11:47 AM

    Konfigurationsleitfaden für das lokale Maven-Lager: Einfache Verwaltung von Projektabhängigkeiten Mit der Entwicklung der Softwareentwicklung ist die Verwaltung von Projektabhängigkeitspaketen immer wichtiger geworden. Als hervorragendes Build-Tool und Abhängigkeitsmanagement-Tool spielt Maven eine wichtige Rolle im Projektentwicklungsprozess. Maven lädt standardmäßig Projektabhängigkeiten aus dem zentralen Warehouse herunter, aber manchmal müssen wir einige spezifische Abhängigkeitspakete im lokalen Warehouse speichern, um sie offline zu verwenden oder um Netzwerkinstabilität zu vermeiden. In diesem Artikel wird erläutert, wie Sie das lokale Maven-Lager für eine einfache Verwaltung konfigurieren

    Grundlegendes Tutorial: Erstellen Sie ein Maven-Projekt mit IDEA Grundlegendes Tutorial: Erstellen Sie ein Maven-Projekt mit IDEA Feb 19, 2024 pm 04:43 PM

    IDEA (IntelliJIDEA) ist eine leistungsstarke integrierte Entwicklungsumgebung, die Entwicklern dabei helfen kann, verschiedene Java-Anwendungen schnell und effizient zu entwickeln. Bei der Java-Projektentwicklung kann uns die Verwendung von Maven als Projektmanagement-Tool dabei helfen, abhängige Bibliotheken besser zu verwalten, Projekte zu erstellen usw. In diesem Artikel werden die grundlegenden Schritte zum Erstellen eines Maven-Projekts in IDEA detailliert beschrieben und spezifische Codebeispiele bereitgestellt. Schritt 1: Öffnen Sie IDEA und erstellen Sie ein neues Projekt. Öffnen Sie IntelliJIDEA

    Best Practices und empfohlene Methoden zum Festlegen von Java-Versionen in Maven Best Practices und empfohlene Methoden zum Festlegen von Java-Versionen in Maven Feb 22, 2024 pm 03:18 PM

    Wenn Sie Maven zum Erstellen eines Java-Projekts verwenden, stoßen Sie häufig auf Situationen, in denen Sie die Java-Version festlegen müssen. Durch die korrekte Einstellung der Java-Version kann nicht nur sichergestellt werden, dass das Projekt in verschiedenen Umgebungen normal ausgeführt wird, sondern auch einige Kompatibilitätsprobleme vermieden und die Stabilität und Wartbarkeit des Projekts verbessert werden. In diesem Artikel werden die Best Practices und empfohlenen Methoden zum Festlegen von Java-Versionen in Maven vorgestellt und spezifische Codebeispiele als Referenz bereitgestellt. 1. Legen Sie die Java-Version in der Datei pom.xml des Maven-Projekts fest

    Reibungsloser Build: So konfigurieren Sie die Maven-Image-Adresse richtig Reibungsloser Build: So konfigurieren Sie die Maven-Image-Adresse richtig Feb 20, 2024 pm 08:48 PM

    Reibungsloser Build: So konfigurieren Sie die Maven-Image-Adresse richtig. Wenn Sie Maven zum Erstellen eines Projekts verwenden, ist es sehr wichtig, die richtige Image-Adresse zu konfigurieren. Durch die richtige Konfiguration der Spiegeladresse kann der Projektaufbau beschleunigt und Probleme wie Netzwerkverzögerungen vermieden werden. In diesem Artikel wird erläutert, wie die Maven-Spiegeladresse korrekt konfiguriert wird, und es werden spezifische Codebeispiele aufgeführt. Warum müssen Sie die Maven-Image-Adresse konfigurieren? Maven ist ein Projektmanagement-Tool, das automatisch Projekte erstellen, Abhängigkeiten verwalten, Berichte erstellen usw. kann. Normalerweise beim Erstellen eines Projekts in Maven

    Wie deaktiviere ich Testfälle in Maven? Wie deaktiviere ich Testfälle in Maven? Feb 26, 2024 am 09:57 AM

    Maven ist ein Open-Source-Projektmanagementtool, das häufig für Aufgaben wie die Erstellung, das Abhängigkeitsmanagement und die Dokumentenfreigabe von Java-Projekten verwendet wird. Wenn wir Maven für die Projekterstellung verwenden, möchten wir manchmal die Testphase ignorieren, wenn wir Befehle wie mvnpackage ausführen, was in einigen Fällen die Build-Geschwindigkeit verbessert, insbesondere wenn ein Prototyp oder eine Testumgebung schnell erstellt werden muss. In diesem Artikel wird anhand spezifischer Codebeispiele detailliert beschrieben, wie die Testphase in Maven ignoriert werden kann. Warum Sie das Testen während der Projektentwicklung oft ignorieren sollten

    See all articles