Aplicación Bookshelf para Java

La aplicación Bookshelf es una aplicación web de muestra escrita en Java, que muestra cómo usar diversos productos de Google Cloud Platform, por ejemplo:

  • Entorno flexible de Google App Engine
  • Google Cloud SQL
  • Google Cloud Datastore
  • Google Cloud Storage
  • Google Compute Engine

En este tutorial, se analiza la aplicación Bookshelf detalladamente y se analiza la forma en que se despliega cada función de la aplicación con tecnologías y servicios familiares proporcionados por Cloud Platform.

La aplicación Bookshelf se basa en el framework de aplicaciones web javax.servlet y utiliza JavaServer Pages. La aplicación de muestra Bookshelf usa Servlets debido a su simplicidad y facilidad de uso. Sin embargo, los conceptos y las tecnologías analizados se aplican independientemente de qué framework utilices. Puedes desplegar esta aplicación en otro framework de aplicaciones web de tu elección, por ejemplo, Spring Boot (muestra).

Captura de pantalla de la aplicación Bookshelf en la que se muestran controles y portadas de libros

La aplicación de muestra Bookshelf almacena una colección de títulos de libros. Quien tenga acceso a la aplicación puede agregar libros a la lista. La aplicación de muestra ofrece las siguientes funciones:

  • Los usuarios pueden ver la lista de libros y pueden agregar o quitar libros de ella.
  • Los usuarios pueden editar detalles del libro.
  • Los usuarios pueden subir imágenes de portada para libros.
  • Los usuarios pueden iniciar sesión con sus cuentas de Google y ver los libros que han agregado a la lista.

Objetivos

  • Clonar o descargar la aplicación de muestra.
  • Compilar la aplicación y ejecutarla en la máquina local.
  • Desplegar la aplicación en App Engine.
  • Aprender sobre el código de muestra.
  • Obtener información sobre cómo la aplicación almacena datos estructurados.
  • Obtener información sobre cómo la aplicación almacena datos binarios en Google Cloud Storage.
  • Obtener información sobre cómo la aplicación autentica a los usuarios.
  • Obtener información sobre cómo la aplicación crea registros de eventos visibles en la consola de Google Cloud Platform.

Costes

En este tutorial, se utilizan componentes facturables de Cloud Platform, incluido Google Compute Engine.

Es posible que los nuevos usuarios de Cloud Platform cumplan los requisitos para obtener una versión de prueba gratuita.

Este tutorial consta de varios pasos, y cada paso está documentado en su propia página. La última página del tutorial incluye instrucciones para limpiar los recursos, de modo que ya no se te cobre por los servicios de Cloud Platform. Si prefieres no completar todos los pasos del tutorial, consulta la sección sobre instrucciones de limpieza de recursos en la página final.

Antes de empezar

  1. Usa la consola de GCP para configurar el proyecto de Google Cloud Platform:
    1. Crea un nuevo proyecto de GCP, luego crea una aplicación de App Engine y habilita la facturación en ese proyecto:
      Ir a App Engine

      Selecciona la región donde deseas ubicar la aplicación de App Engine cuando se te indique y luego habilita la facturación. El Panel de control se abre después de haber creado el proyecto en GCP.

    2. Habilita las Cloud Datastore, Cloud Pub/Sub, Cloud Storage JSON, Stackdriver Logging, and Google+ API necesarias.

      Habilita las API

  2. Si quieres desplegar una aplicación Java en App Engine, primero debes configurar el entorno. Consulta la sección sobre el uso de Apache Maven y el complemento de App Engine para obtener más información.
  3. Descarga, instala e inicializa el SDK de Google Cloud:
    Descargar el SDK
  4. Adquiere las credenciales locales para poder autenticarte con los servicios de Google Cloud Platform:
    gcloud auth application-default login
  5. Verifica que el proyecto predeterminado sea correcto:
    gcloud config list
    Si el ID del proyecto que figura en la salida no es el proyecto que pretendías utilizar en este tutorial, introduce el siguiente comando para establecer el proyecto:
    gcloud config set project [YOUR_PROJECT_ID]
    donde [YOUR_PROJECT_ID] es el ID del proyecto que creaste o elegiste en este tutorial.
  6. Clona el repositorio de muestra:

    git clone https://github.com/GoogleCloudPlatform/getting-started-java.git

    También puedes descargar la muestra como un archivo ZIP y extraerla.

En este tutorial, se da por hecho que estás familiarizado con Java y que tienes instalado Java 8 y Maven.

Estructura del tutorial

El tutorial de Bookshelf presenta varias partes que demuestran la forma en que la aplicación de muestra usa varios servicios de Cloud Platform.

En los formularios que constan en este tutorial, se muestra cómo la aplicación usa formularios web para recibir y almacenar información de libros.

En la sección de datos estructurados del tutorial, se explica cómo la aplicación de muestra almacena información de libros en una base de datos SQL o NoSQL. En la página web de la aplicación, se puede ver un formulario en el cual el usuario puede introducir el título, autor, descripción y la fecha de publicación de un libro. La aplicación almacena esta información en una base de datos, para cada libro que se ha agregado, de modo que se pueda recuperar más tarde para poder visualizarlo o editarlo. En este paso del tutorial, puedes elegir entre dos bases de datos: Cloud Datastore o Cloud SQL. Podrás pasar al siguiente paso una vez que hayas realizado este con una de las bases de datos.

La información sobre cómo la aplicación de muestra almacena datos binarios en Cloud Storage se explica en la sección de Cloud Storage de este tutorial. En la página web de la aplicación, el usuario puede especificar una imagen de portada para cada libro. La aplicación almacena las imágenes de portada en un segmento de Cloud Storage.

En la parte de autorización del tutorial, se explica la forma en que la aplicación proporciona un flujo de inicio de sesión para el usuario. Cuando un usuario inicia sesión, cualquier libro que se ha agregado se asocia con el usuario individual. Los usuarios que hayan iniciado sesión solo ven sus propios libros.

La información sobre cómo la aplicación escribe los registros que se vuelven visibles en la consola de Google Cloud Platform se explica en la sección de almacenamiento de registros de este tutorial. Los registros de este tipo pueden proporcionar información de diagnóstico durante el desarrollo de la aplicación.

¿Te ha resultado útil esta página? Enviar comentarios: