Code schreiben und annotieren

Auf dieser Seite wird beschrieben, wie Sie Ihren Cloud Endpoints Frameworks-Code strukturieren und annotieren. Eine vollständige Liste aller unterstützten Annotationen finden Sie unter Annotationen.

Vorbereitung

  1. Richten Sie Ihre Entwicklungsumgebung ein.
  2. Klonen Sie das Endpoints Frameworks-Basisbeispiel:

     git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
    
  3. Das Endpoints Frameworks-Basisbeispiel befindet sich hier:

     cd appengine-java8/endpoints-v2-skeleton/
    

Zur Erläuterung der Funktionsweise von Annotationen wird in diesem Dokument das Beispiel endpoints-v2-backend verwendet. Es zeigt die Annotationen und anderen Code, den Sie in das Beispiel endpoints-v2-skeleton einfügen müssen. Am Ende verhält sich das geänderte Beispiel endpoints-v2-skeleton genauso wie das Beispiel endpoints-v2-backend, das in Erste Schritte mit Endpoints Frameworks in App Engine verwendet wird.

Code erstellen und annotieren

So annotieren Sie den Code:

  1. Rufen Sie das Java-Quellverzeichnis des Projekts auf. Beispiel: src/main/java/com/example/skeleton.
  2. Erstellen Sie eine JavaBean-Klassendatei mit dem Namen Message.java, die den folgenden Code enthält:
    public class Message {
    
      private String message;
    
      public String getMessage() {
        return this.message;
      }
    
      public void setMessage(String message) {
        this.message = message;
      }
    }
  3. Bearbeiten Sie die Datei MyApi.java, die im Basisbeispiel enthalten ist. Ändern Sie die @Api-Definitionsannotation wie hier gezeigt:
    @Api(
        name = "echo",
        version = "v1",
        namespace =
        @ApiNamespace(
            ownerDomain = "echo.example.com",
            ownerName = "echo.example.com",
            packagePath = ""
        ),
        // ...
    )

    Das Attribut version = "v1" gibt die Version der Beispiel-API an. Der Wert, den Sie eingeben, wird Teil des Pfads in der URL zu Ihrer API. Weitere Informationen zu Versionen finden Sie unter API-Versionierung handhaben.

  4. Fügen Sie die folgende echo-Methode als ersten API-Endpunkt und die doEcho-Hilfsmethode zu MyApi.java hinzu.
    @ApiMethod(name = "echo")
    public Message echo(Message message, @Named("n") @Nullable Integer n) {
      return doEcho(message, n);
    }
    private Message doEcho(Message request, Integer n) {
      Message response = new Message();
      if (n != null && n >= 0) {
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < n; i++) {
          if (i > 0) {
            sb.append(' ');
          }
          sb.append(request.getMessage());
        }
        response.setMessage(sb.toString());
      }
      return response;
    }
  5. Kopieren Sie alle Importe aus Echo.java und fügen Sie sie in MyApi.java ein.
  6. Maven

    Erstellen Sie das Projekt:

    mvn clean package

    Gradle

    Erstellen Sie das Projekt:

    gradle clean build

Grundlagen zur Annotation

In Backend-APIs werden generell drei Annotationen verwendet.

  • @Api enthält die Konfigurationsdetails der Backend-API.
  • @ApiMethod markiert eine Klassenmethode, die Teil der Backend-API ist. Methoden, die nicht mit @ApiMethod markiert sind, werden beim Generieren von Clientbibliotheken und Discovery-Dokumenten nicht einbezogen. Sie können mit der @ApiMethod-Annotation auch die API-Konfiguration für eine bestimmte Methode überschreiben.
  • @Named muss allen Parametern hinzugefügt werden, die an serverseitige Methoden übergeben werden, sofern der Parameter kein Entitätstyp ist.

Eine vollständige Liste aller Endpoints Frameworks-Annotationen finden Sie unter Annotationen und Syntax.

Weitere Informationen