Scrittura e annotazione del codice

In questa pagina viene descritto come strutturare e annotare il codice Frameworks di Cloud Endpoints. Per un elenco completo di tutte le annotazioni supportate, consulta la sezione Annotazioni.

Prima di iniziare

  1. Configura l'ambiente di sviluppo.
  2. Clona lo scheletro di Endpoints Frameworks:

     git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
    
  3. L'esempio di scheletro di Endpoints Frameworks si trova in:

     cd appengine-java8/endpoints-v2-skeleton/
    

Per spiegare meglio il funzionamento delle annotazioni, questo documento utilizza l'esempio endpoints-v2-backend per mostrarle e altro codice che devi aggiungere all'esempio endpoints-v2-skeleton per poterlo creare. Alla fine, l'esempio endpoints-v2-skeleton modificato si comporta come l'esempio endpoints-v2-backend, utilizzato in Introduzione a Endpoints Frameworks su App Engine.

Creazione e annotazione del codice

Per annotare il codice:

  1. Passa alla directory di origine Java del progetto, ad esempio: src/main/java/com/example/skeleton.
  2. Crea un file di classe JavaBean denominato Message.java contenente il seguente codice:
    public class Message {
    
      private String message;
    
      public String getMessage() {
        return this.message;
      }
    
      public void setMessage(String message) {
        this.message = message;
      }
    }
  3. Modifica il file MyApi.java contenuto nello scheletro di esempio. Modifica l'annotazione di definizione @Api con quanto segue:
    @Api(
        name = "echo",
        version = "v1",
        namespace =
        @ApiNamespace(
            ownerDomain = "echo.example.com",
            ownerName = "echo.example.com",
            packagePath = ""
        ),
        // ...
    )

    L'attributo version = "v1" specifica la versione dell'API di esempio. Il valore inserito diventa parte del percorso dell'URL all'API. Per maggiori informazioni sulle versioni, consulta Gestire il controllo delle versioni delle API.

  4. Aggiungi il seguente metodo echo come primo endpoint API e il metodo helper doEcho a MyApi.java.
    @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. Copia tutte le importazioni da Echo.java e incollale in MyApi.java.
  6. Maven

    Crea il progetto:

    mvn clean package

    Gradle

    Crea il progetto:

    gradle clean build

Nozioni di base sulle annotazioni

Esistono tre annotazioni comunemente utilizzate nelle API di backend:

  • @Api contiene i dettagli di configurazione dell'API di backend.
  • @ApiMethod contrassegna un metodo della classe che fa parte dell'API di backend. I metodi non contrassegnati con @ApiMethod non sono inclusi quando generi librerie client e documenti di rilevamento. L'annotazione @ApiMethod può essere utilizzata anche per sostituire la configurazione API per un metodo specifico.
  • @Named deve essere aggiunto a tutti i parametri trasmessi ai metodi lato server, a meno che il parametro non sia un tipo di entità.

Per un elenco completo di tutte le annotazioni di Endpoints Frameworks, consulta Annotazioni e sintassi.

Passaggi successivi