CursosEmpresasBlogLiveConfPrecios

Proyecto a producción con AWS ElasticBeanstalk

Clase 19 de 23 • Curso de Java para APIs REST 2016

Clase anteriorSiguiente clase

Contenido del curso

Este curso no es vigente
  • 1

    AVISO IMPORTANTE

    00:12
Bienvenidos
  • 2

    Frameworks y herramientas de Java

    03:55
Introducción a Java Enterprise Edition
  • 3
    Preguntas antes de la clase

    Preguntas antes de la clase

    58:12
  • 4
    Diferencia entre Java y Java Enterprise

    Diferencia entre Java y Java Enterprise

    07:52
  • 5
    Contenedores de una aplicación JEE

    Contenedores de una aplicación JEE

    02:08
  • 6

    Guía de Maven

    02:53
  • 7

    Guía de Gradle

    01:56
  • 8
    Configuración de proyecto usando Maven y Gradle

    Configuración de proyecto usando Maven y Gradle

    34:59
  • 9
    Tipos de aplicaciones Web con JEE: Presentation vs Services

    Tipos de aplicaciones Web con JEE: Presentation vs Services

    13:44
  • 10
    Java Servlets

    Java Servlets

    46:04
  • 11
    Preguntas y respuestas en clase

    Preguntas y respuestas en clase

    20:20
Spring Framework y creación de un servicio REST
  • 12
    Preguntas antes de la clase

    Preguntas antes de la clase

    49:43
  • 13
    Servicio REST con Java

    Servicio REST con Java

    25:50
  • 14
    Inyección de dependencias

    Inyección de dependencias

    41:40
  • 15
    MVC con Spring framework

    MVC con Spring framework

    30:43
  • 16
    Preguntas y respuestas en clase

    Preguntas y respuestas en clase

    14:17
Proyecto Spring MVC a producción y Java 8
  • 17
    Preguntas antes de la clase

    Preguntas antes de la clase

    49:59
  • 18
    Lambdas con Java 8

    Lambdas con Java 8

    22:48
  • 19
    Proyecto a producción con AWS ElasticBeanstalk

    Proyecto a producción con AWS ElasticBeanstalk

    58:50
  • 20
    Preguntas y respuestas en clase

    Preguntas y respuestas en clase

    17:48
Complementos del curso
  • 21
    Unit testing en Java

    Unit testing en Java

    08:59
  • 22
    JSPs y sus alternativas

    JSPs y sus alternativas

    06:56
  • 23
    Persistencia en Java con JPA y Hibernate

    Persistencia en Java con JPA y Hibernate

    00:00
    Charles Córdova

    Charles Córdova

    student•
    hace 10 años

    Todo genial! pero personalmente me hubiera encantado que usen AppEngine para hacer deploy de la aplication. Un servicio free y "robusto" para utilizar los conceptos anteriores de Spring Framework! Saludos.

      Cesar David Ramírez Dimaté

      Cesar David Ramírez Dimaté

      student•
      hace 9 años

      No es un servicio free. Maneja el mismo esquema que Amazon Web Services. Es gratis hasta ciertas condiciones de uso. Se explica en este artículo escrito por Platzi https://platzi.com/blog/google-app-engine/.

      Acá en Amazon explican los límites para que la cuenta sea gratis http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/free-tier-limits.html entonces lo que hace el profesor es eso, mantener el servidor por un par de horas para que no le generen el cobro. El dilema radica en no poder crear la cuenta de AWS si no se tiene tarjeta de crédito.

    Jaider Garcia

    Jaider Garcia

    student•
    hace 10 años

    Hola, muy bueno el curso de java, para los que ya conocemos java y hemos trabajado con el fue muy enriquecedor ver estas configuraciones, mas sin embargo me queda el sin sabor de la parte de seguridad, creo que hizo falta eso, deberían lanzar una clase extra dedicada a la combinación de la api sea con spring security o cualquier otra tecnologia para brindar seguridad.

      David Calle

      David Calle

      student•
      hace 10 años

      Si, sería muy bueno una clase extra para meterle seguridad al API con Spring Security

      Cesar David Ramírez Dimaté

      Cesar David Ramírez Dimaté

      student•
      hace 9 años

      Pienso lo mismo. De igual manera el curso tiene que mejorar en muchos aspectos, por ejemplo, todavía tengo bastantes dudas sobre este fragmento de código que lo explicó por encima.

      @RequestMapping(value = "/{userId}/courses", method = RequestMethod.POST) ResponseEntity<?> addCourse(@PathVariable String userId, @RequestBody Course input) { this.validateUser(userId); return this.instructorRepository .findByUsername(userId) .map(account -> { Course result = courseRepository.save(new Course(account, input.description)); HttpHeaders httpHeaders = new HttpHeaders(); httpHeaders.setLocation( ServletUriComponentsBuilder.fromCurrentRequest().path("/{id}") .buildAndExpand(result.getId()).toUri()); return new ResponseEntity<>(null, httpHeaders, HttpStatus.CREATED); } ).get(); }
    Islas Juan Pablo Juan Pablo

    Islas Juan Pablo Juan Pablo

    student•
    hace 10 años

    Recuperar variables de path

    @RequestMapping(value = "/{userId}", method = RequestMethod.GET) public Instructor getInstructor(@PathVariable String userId){         ... }
      Cesar David Ramírez Dimaté

      Cesar David Ramírez Dimaté

      student•
      hace 9 años

      Dirás, recuperar variables de la URI.

    Charles Córdova

    Charles Córdova

    student•
    hace 10 años

    porque usar post! y no psar CREATE en el header? por ahi me perdi de algo! Saludos.

      Antonio Jose Galisteo Cantero

      Antonio Jose Galisteo Cantero

      student•
      hace 9 años

      Porque lo que se usa son los verbos de http como indica la especificación de REST. GET, POST, PUT yDELETE

      Jair Israel Avilés Eusebio

      Jair Israel Avilés Eusebio

      student•
      hace 9 años

      Es correcto. Por definición un REST APi se desarrolla tomando en cuenta que se consumira mediante los verbos HTTP. En el blog de Platzi existe una guia de buenas practicas para diseño de apis de manera óptima.

      https://platzi.com/blog/como-crear-apis/

    Eder Weiß

    Eder Weiß

    student•
    hace 10 años

    El tipo opcional igual lo tiene el lenguaje Ruby.

    Julio Jaramillo

    Julio Jaramillo

    student•
    hace 9 años

    Yo descargue el proyecto “demo” de github pero tiene errores, el error es el id de spring deoendency management,revise si existía la libreria aun en los repositorios de Maven pero creo que ya no esta, Alguien me puede ayudar, saludos.

    Cesar David Ramírez Dimaté

    Cesar David Ramírez Dimaté

    student•
    hace 9 años

    No es tan fácil en AWS como subir el war y ya, no carga la aplicación correctamente.

    Revisando el log se muestra lo siguiente

    19-Feb-2017 23:59:10.036 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib

      David Gonzalez

      David Gonzalez

      student•
      hace 9 años

      A mi me funcionó, revisa si es porque está mal escrito instructors, te falta una ‘r’

      Cesar David Ramírez Dimaté

      Cesar David Ramírez Dimaté

      student•
      hace 9 años

      Si lo tomé en cuenta después, pero tampoco, al parecer hay que realizar más configuraciones en el servidor aparte de las que explican en el vídeo para ver si funciona.

    Esteban Parra Gonzalez

    Esteban Parra Gonzalez

    student•
    hace 9 años

    Pregunta: En lo que conozco de servicios web se tiene un WSDL y sus métodos, en REST cada subdivisión EJEMPLO URL + TIPO como Instructor sería el WSDL y además el método?

      David Gonzalez

      David Gonzalez

      student•
      hace 9 años

      En SOAP que un tipo de servicios web tienes WSDL y básicamente es la definición del servicio

      En REST el WSDL no existe, la definición sería el método con anotación RequestMapping, pero no lo puedes ver en el navegador como un WSDL

      Me parece que una comparación más clara de REST es con un llamado a una página web normal, donde con una URL (http://www.algo.com) te retorna un HTML, solo que con REST te retorna un JSON (o un XML o datos en algún formaro)

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads