SlideShare a Scribd company logo
1 of 39
Download to read offline
Mi Primera Aplicación
utilizando el Cloud de Google

    Google App Engine

            Niger Arce
     Equipo de Tecnologías Google
             USMP Virtual
              @narce90
Antes de empezar...
 ●   Eclipse JEE http://www.eclipse.org/downloads/
 ●   JDK (Java Development Kit) http://goo.gl/8zusM
 ●   App Engine Plugin para Eclipse http://dl.google.com/eclipse/plugin/4.2
 ●   App Engine SDK
 ●   Cuenta Google
 ●   Paciencia
 ●   Una Computadora =)
     ...y un Celular...



Referencia: https://developers.google.
   com/appengine/docs/java/gettingstarted/installing
...y una cosa más

Es importante familiarizarse con la documentación:




  https://developers.google.com/appengine/docs/
¿Qué es Cloud Computing?
¿Cloud? ¿Cloud Computing?

               Se denomina «Cloud» al conjunto
               de servidores que se encuentra en
               aquel mundo llamado internet.


               «Cloud Computing» es un
               paradigma que permite ofrecer
               servicios de computación a través
               de internet.
                                   Fuente: Wikipedia
¿Cloud? ¿Cloud Computing?
Google App Engine
¿Qué es?
¿Qué es?

           Google App Engine (GAE)
           es una plataforma de cloud
           computing para el desarrollo
           y hosteo de aplicaciones web
           en datacenters administrados
           por Google.
¿Qué me ofrece?

           ●   Entorno de ejecución para Java, Python y Go.
           ●   Servicios web, con soporte a las tecnologías
               web más comunes.
           ●   Almacenamiento persistente con queries,
               ordenamiento y transacciones.
           ●   Escalamiento automático y balanceo de
               carga.
           ●   APIs para la autenticación de usuarios y
               envío de correo a través de Google Accounts.
           ●   Un completo entorno de desarrollo que nos
               permite simular Google App Engine de forma
               local.
           ●   …y otras características más.
Instalación
Antes de empezar… ¬¬
Nos registramos en GAE
     http://appengine.google.com/
Nos registramos en GAE
     http://appengine.google.com/
Nos registramos en GAE
     http://appengine.google.com/
¿Problemas con el SMS?




https://appengine.google.com/waitlist/sms_issues
Vamos a la acción!!
Creando mi primera aplicación

● Pulsamos el botón
● Escogemos la opción
  «New Web Application Project»
Creando mi primera aplicación
● Le ponemos un nombre
  a nuestro proyecto.
● Declaramos el paquete
  del proyecto.
● Desactivamos el
  checkbox
«Use Google Web Toolkit»
● Pulsamos «Finish»
OK! Y ahora?

…lo vamos a ejecutar
         …WHAT? Tan pronto?
No pasa nada!
…tranquilidad
hermano!

Entremos a:
http://localhost:8888/

…hazle click a
«Mi_Primer_App»
…y ya tenemos un «Hello, world»
Veamos que hay detrás de la magia
Veamos que hay detrás de la magia
web.xml
● Empleado para mapear URLs de los servlets
  que empleará la aplicación
appengine-web.xml
Un archivo de configuración adicional.
Incluye:
● ID registrado de la aplicación.
● El número de versión de la aplicación.
● Las listas de archivos estáticos.
Bueno… bueno… hagamos
algo mejor :D
Agregando links de login/logout

UserService userService = UserServiceFactory.getUserService();
User user = userService.getCurrentUser();
if (user != null) {
%>
<p>Hola, <%= user.getNickname() %>!
<p> <a href="<%= userService.createLogoutURL(request.getRequestURI()) %>">Salir </a></p>
<%
} else {
%>
<p><a href="<%= userService.createLoginURL(request.getRequestURI()) %>">Ingresar</a</p>

...
....
Sobre DataStore
●   Hay que tener en cuenta lo siguiente, cuando trabajamos
    con el DataStore:
●   No es una base de datos relacional
●   No existe un programa para crear tablas
●   No se necesita crear tablas. Al persistir una entidad se
    crean registros de entidades con un tipo propio y con los
    atributos establecidos para dicha entidad
●   Alternativamente se puede interactuar a través de JDO y
    JPA.
¿Qué es
   un
Entidad?
●   Es una representación en forma de objeto de una fila del
    DataStore.
●   Cada Entidad tiene propiedades(Ejm: Entidad Alumno,
    tiene propiedades ‘nombre’, ‘apellido’, ‘fecha de
    nacimiento’,etc…)
●   Las propiedades tienen un tipo de Dato, ya sea String,
    Entero, Date, etc… (Google App Engine tipos especiales
    como PhoneNumber, Email, etc)
●   Cada Entidad tiene un Key, el cual es un identificador
    único. Este se puede autogenerar o asignar como String
    o valor numérico.
●   Cata entidad tiene un tipo. Por ejemplo, tipos de
    entidades serían : ‘Persona’, ´País’, ‘Recibo’, ‘Orden de
    Compra’.
Deploy...
¿Y la nube?
Para subir la aplicación a la nube solo
necesitamos hacer unos cuantos pasos:
●   Loggearnos desde Eclipse a AppEngine.
●   Damos click en Sign in to Google en la parte
    inferior derecha de Eclipse
¿Y la nube?
●   Para subir la aplicación a la nube solo
    necesitamos seguir dos pasos:
    ●   Hacer click en Deploy to App Engine…
●   Aparecerá la pantalla de abajo y luego
    seleccionamos ‘App Engine project settings…’
    Para configurar el nombre y versión de
    nuestra aplicación en la nube.
O también…

Utilizando el archivo de configuración appengine-
web.xml, podemos ver las siguientes etiquetas:

  <application>miaplicacion</application>
  <version>1</version>
Creando la aplicación
No podremos seguir subiendo la aplicación sin antes
haber creado una en nuestra cuenta de App Engine.
Entramos a http://appengine.google.com nos
logueamos y seleccionamos ‘Create Aplication’. Nos
aparecerá lo siguiente:
¡ Y Listo !
●   Regresamos a Eclipse y en la ventana de abajo
    colocamos el id de nuestra aplicación ingresado en el
    paso anterior; además ingresaremos la versión de la
    aplicación que para este caso es la primera ‘1’.
    Aceptamos los datos y seleccionamos Deploy.
¿Preguntas?
http://gplus.to/narce
ng.arce90@gmail.com
@narce90

More Related Content

What's hot (14)

Como crear una aplicación para facebook
Como crear una aplicación para facebookComo crear una aplicación para facebook
Como crear una aplicación para facebook
 
Los navegadores 2
Los navegadores 2Los navegadores 2
Los navegadores 2
 
Trabajo de power point luis
Trabajo de power point luisTrabajo de power point luis
Trabajo de power point luis
 
Como insertar una_imagen_en_eclipse
Como insertar una_imagen_en_eclipseComo insertar una_imagen_en_eclipse
Como insertar una_imagen_en_eclipse
 
Blogg
BloggBlogg
Blogg
 
Presentacion de la Aplicacion frases motivadoras GLD
Presentacion de la Aplicacion frases motivadoras GLDPresentacion de la Aplicacion frases motivadoras GLD
Presentacion de la Aplicacion frases motivadoras GLD
 
Blogger
BloggerBlogger
Blogger
 
Blogger
BloggerBlogger
Blogger
 
Crear una aplicación android
Crear una aplicación androidCrear una aplicación android
Crear una aplicación android
 
Aplicación android mediante goolge
Aplicación android mediante goolgeAplicación android mediante goolge
Aplicación android mediante goolge
 
Mi app-asp-net-mvc2
Mi app-asp-net-mvc2Mi app-asp-net-mvc2
Mi app-asp-net-mvc2
 
Alfredo
AlfredoAlfredo
Alfredo
 
Crear una aplicacion android
Crear una aplicacion androidCrear una aplicacion android
Crear una aplicacion android
 
imgecl
imgeclimgecl
imgecl
 

Viewers also liked

Presentation SEO/SEM
Presentation SEO/SEMPresentation SEO/SEM
Presentation SEO/SEM
Hicham SBINI
 
Cloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App EngineCloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App Engine
Frederico Maia Arantes
 

Viewers also liked (20)

Performance im Fokus
Performance im FokusPerformance im Fokus
Performance im Fokus
 
Open Source BPM - iteratec Architekturtag
Open Source BPM - iteratec ArchitekturtagOpen Source BPM - iteratec Architekturtag
Open Source BPM - iteratec Architekturtag
 
Tecnicas SEO
Tecnicas SEOTecnicas SEO
Tecnicas SEO
 
SMM-SEO.SEM
SMM-SEO.SEMSMM-SEO.SEM
SMM-SEO.SEM
 
produção de games com tecnologia livre ou proprietária, Qual usar?
produção de games com tecnologia livre ou proprietária, Qual usar?produção de games com tecnologia livre ou proprietária, Qual usar?
produção de games com tecnologia livre ou proprietária, Qual usar?
 
eind presentatie
eind presentatieeind presentatie
eind presentatie
 
Linkbaiting - SEMSEO 2011
Linkbaiting - SEMSEO 2011Linkbaiting - SEMSEO 2011
Linkbaiting - SEMSEO 2011
 
Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...
Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...
Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...
 
Presentation SEO/SEM
Presentation SEO/SEMPresentation SEO/SEM
Presentation SEO/SEM
 
Adforallprsentation 100914100808 Phpapp02
Adforallprsentation 100914100808 Phpapp02Adforallprsentation 100914100808 Phpapp02
Adforallprsentation 100914100808 Phpapp02
 
20100506 JAX BPMN 2.0 in der Praxis
20100506 JAX BPMN 2.0 in der Praxis20100506 JAX BPMN 2.0 in der Praxis
20100506 JAX BPMN 2.0 in der Praxis
 
Aula de Risoto
Aula de Risoto Aula de Risoto
Aula de Risoto
 
Cloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App EngineCloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App Engine
 
Social Media für Unternehmen und Institutionen
Social Media für Unternehmen und InstitutionenSocial Media für Unternehmen und Institutionen
Social Media für Unternehmen und Institutionen
 
Google app engine para lean startups: the good, the bad and the ugly
Google app engine para lean startups: the good, the bad and the uglyGoogle app engine para lean startups: the good, the bad and the ugly
Google app engine para lean startups: the good, the bad and the ugly
 
Digital Training (SEO: search engine optimization)
Digital Training (SEO: search engine optimization)Digital Training (SEO: search engine optimization)
Digital Training (SEO: search engine optimization)
 
Smart Industry
Smart IndustrySmart Industry
Smart Industry
 
Introducción al desarrollo de videojuegos 2D con Wave Engine
Introducción al desarrollo de videojuegos 2D con Wave EngineIntroducción al desarrollo de videojuegos 2D con Wave Engine
Introducción al desarrollo de videojuegos 2D con Wave Engine
 
TDD com Python e App Engine
TDD com Python e App EngineTDD com Python e App Engine
TDD com Python e App Engine
 
Werksverzeichnis Hans Martin 1916
Werksverzeichnis Hans Martin 1916Werksverzeichnis Hans Martin 1916
Werksverzeichnis Hans Martin 1916
 

Similar to Congreso visión 2012 - taller introducción app engine

Construyendo una app Android sobre la nube App Engine
Construyendo una app Android sobre la nube App EngineConstruyendo una app Android sobre la nube App Engine
Construyendo una app Android sobre la nube App Engine
GDG Lima
 
Appcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAppcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en Android
Alberto Ruibal
 
Servicios en la nube, desafíos de la evolución arquitectónica
Servicios en la nube, desafíos de la evolución arquitectónicaServicios en la nube, desafíos de la evolución arquitectónica
Servicios en la nube, desafíos de la evolución arquitectónica
GeneXus
 
Google cloud endpoints
Google cloud endpointsGoogle cloud endpoints
Google cloud endpoints
GDG Lima
 

Similar to Congreso visión 2012 - taller introducción app engine (20)

Google App Engine1
Google App Engine1Google App Engine1
Google App Engine1
 
Construyendo una app Android sobre la nube App Engine
Construyendo una app Android sobre la nube App EngineConstruyendo una app Android sobre la nube App Engine
Construyendo una app Android sobre la nube App Engine
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"
 
Curso Cloud Computing, Parte 2: Google App Engine
Curso Cloud Computing, Parte 2: Google App EngineCurso Cloud Computing, Parte 2: Google App Engine
Curso Cloud Computing, Parte 2: Google App Engine
 
Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...
Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...
Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...
 
Python Gae django
Python Gae djangoPython Gae django
Python Gae django
 
Proyect Evenge. Event manager
Proyect Evenge. Event managerProyect Evenge. Event manager
Proyect Evenge. Event manager
 
Cetis 109
Cetis 109Cetis 109
Cetis 109
 
Cetis 109(2)
Cetis 109(2)Cetis 109(2)
Cetis 109(2)
 
Appcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAppcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en Android
 
App engine
App engineApp engine
App engine
 
Mi Primera Aplicacion en Google App Engine
Mi Primera Aplicacion en Google App EngineMi Primera Aplicacion en Google App Engine
Mi Primera Aplicacion en Google App Engine
 
Gadget review
Gadget reviewGadget review
Gadget review
 
Gadget review
Gadget reviewGadget review
Gadget review
 
Configuración y uso Google Drive en Android
Configuración y uso Google Drive en AndroidConfiguración y uso Google Drive en Android
Configuración y uso Google Drive en Android
 
Servicios en la nube, desafíos de la evolución arquitectónica
Servicios en la nube, desafíos de la evolución arquitectónicaServicios en la nube, desafíos de la evolución arquitectónica
Servicios en la nube, desafíos de la evolución arquitectónica
 
Angular 6
Angular 6Angular 6
Angular 6
 
Android camp 2017 google cloud platform + firebase + android
Android camp 2017   google cloud platform + firebase + androidAndroid camp 2017   google cloud platform + firebase + android
Android camp 2017 google cloud platform + firebase + android
 
Google cloud endpoints
Google cloud endpointsGoogle cloud endpoints
Google cloud endpoints
 
Usando Google Maps en tu Android App
Usando Google Maps en tu Android AppUsando Google Maps en tu Android App
Usando Google Maps en tu Android App
 

Recently uploaded

Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdf
NancyLoaa
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
lupitavic
 

Recently uploaded (20)

Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Imperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperioImperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperio
 
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIAFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circular
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdf
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 

Congreso visión 2012 - taller introducción app engine

  • 1. Mi Primera Aplicación utilizando el Cloud de Google Google App Engine Niger Arce Equipo de Tecnologías Google USMP Virtual @narce90
  • 2. Antes de empezar... ● Eclipse JEE http://www.eclipse.org/downloads/ ● JDK (Java Development Kit) http://goo.gl/8zusM ● App Engine Plugin para Eclipse http://dl.google.com/eclipse/plugin/4.2 ● App Engine SDK ● Cuenta Google ● Paciencia ● Una Computadora =) ...y un Celular... Referencia: https://developers.google. com/appengine/docs/java/gettingstarted/installing
  • 3. ...y una cosa más Es importante familiarizarse con la documentación: https://developers.google.com/appengine/docs/
  • 4. ¿Qué es Cloud Computing?
  • 5. ¿Cloud? ¿Cloud Computing? Se denomina «Cloud» al conjunto de servidores que se encuentra en aquel mundo llamado internet. «Cloud Computing» es un paradigma que permite ofrecer servicios de computación a través de internet. Fuente: Wikipedia
  • 9. ¿Qué es? Google App Engine (GAE) es una plataforma de cloud computing para el desarrollo y hosteo de aplicaciones web en datacenters administrados por Google.
  • 10. ¿Qué me ofrece? ● Entorno de ejecución para Java, Python y Go. ● Servicios web, con soporte a las tecnologías web más comunes. ● Almacenamiento persistente con queries, ordenamiento y transacciones. ● Escalamiento automático y balanceo de carga. ● APIs para la autenticación de usuarios y envío de correo a través de Google Accounts. ● Un completo entorno de desarrollo que nos permite simular Google App Engine de forma local. ● …y otras características más.
  • 13. Nos registramos en GAE http://appengine.google.com/
  • 14. Nos registramos en GAE http://appengine.google.com/
  • 15. Nos registramos en GAE http://appengine.google.com/
  • 16. ¿Problemas con el SMS? https://appengine.google.com/waitlist/sms_issues
  • 17. Vamos a la acción!!
  • 18. Creando mi primera aplicación ● Pulsamos el botón ● Escogemos la opción «New Web Application Project»
  • 19. Creando mi primera aplicación ● Le ponemos un nombre a nuestro proyecto. ● Declaramos el paquete del proyecto. ● Desactivamos el checkbox «Use Google Web Toolkit» ● Pulsamos «Finish»
  • 20. OK! Y ahora? …lo vamos a ejecutar …WHAT? Tan pronto?
  • 21. No pasa nada! …tranquilidad hermano! Entremos a: http://localhost:8888/ …hazle click a «Mi_Primer_App»
  • 22. …y ya tenemos un «Hello, world»
  • 23. Veamos que hay detrás de la magia
  • 24. Veamos que hay detrás de la magia
  • 25. web.xml ● Empleado para mapear URLs de los servlets que empleará la aplicación
  • 26. appengine-web.xml Un archivo de configuración adicional. Incluye: ● ID registrado de la aplicación. ● El número de versión de la aplicación. ● Las listas de archivos estáticos.
  • 28. Agregando links de login/logout UserService userService = UserServiceFactory.getUserService(); User user = userService.getCurrentUser(); if (user != null) { %> <p>Hola, <%= user.getNickname() %>! <p> <a href="<%= userService.createLogoutURL(request.getRequestURI()) %>">Salir </a></p> <% } else { %> <p><a href="<%= userService.createLoginURL(request.getRequestURI()) %>">Ingresar</a</p> ... ....
  • 29. Sobre DataStore ● Hay que tener en cuenta lo siguiente, cuando trabajamos con el DataStore: ● No es una base de datos relacional ● No existe un programa para crear tablas ● No se necesita crear tablas. Al persistir una entidad se crean registros de entidades con un tipo propio y con los atributos establecidos para dicha entidad ● Alternativamente se puede interactuar a través de JDO y JPA.
  • 30. ¿Qué es un Entidad?
  • 31. Es una representación en forma de objeto de una fila del DataStore. ● Cada Entidad tiene propiedades(Ejm: Entidad Alumno, tiene propiedades ‘nombre’, ‘apellido’, ‘fecha de nacimiento’,etc…) ● Las propiedades tienen un tipo de Dato, ya sea String, Entero, Date, etc… (Google App Engine tipos especiales como PhoneNumber, Email, etc) ● Cada Entidad tiene un Key, el cual es un identificador único. Este se puede autogenerar o asignar como String o valor numérico. ● Cata entidad tiene un tipo. Por ejemplo, tipos de entidades serían : ‘Persona’, ´País’, ‘Recibo’, ‘Orden de Compra’.
  • 33. ¿Y la nube? Para subir la aplicación a la nube solo necesitamos hacer unos cuantos pasos: ● Loggearnos desde Eclipse a AppEngine. ● Damos click en Sign in to Google en la parte inferior derecha de Eclipse
  • 34. ¿Y la nube? ● Para subir la aplicación a la nube solo necesitamos seguir dos pasos: ● Hacer click en Deploy to App Engine…
  • 35. Aparecerá la pantalla de abajo y luego seleccionamos ‘App Engine project settings…’ Para configurar el nombre y versión de nuestra aplicación en la nube.
  • 36. O también… Utilizando el archivo de configuración appengine- web.xml, podemos ver las siguientes etiquetas: <application>miaplicacion</application> <version>1</version>
  • 37. Creando la aplicación No podremos seguir subiendo la aplicación sin antes haber creado una en nuestra cuenta de App Engine. Entramos a http://appengine.google.com nos logueamos y seleccionamos ‘Create Aplication’. Nos aparecerá lo siguiente:
  • 38. ¡ Y Listo ! ● Regresamos a Eclipse y en la ventana de abajo colocamos el id de nuestra aplicación ingresado en el paso anterior; además ingresaremos la versión de la aplicación que para este caso es la primera ‘1’. Aceptamos los datos y seleccionamos Deploy.