CursosEmpresasBlogLiveConfPrecios

Java Servlets

Clase 10 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 min

Bienvenidos

  • 2

    Frameworks y herramientas de Java

    03:55 min

Introducción a Java Enterprise Edition

  • 3
    Preguntas antes de la clase

    Preguntas antes de la clase

    58:12 min
  • 4
    Diferencia entre Java y Java Enterprise

    Diferencia entre Java y Java Enterprise

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

    Contenedores de una aplicación JEE

    02:08 min
  • 6

    Guía de Maven

    02:53 min
  • 7

    Guía de Gradle

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

    Configuración de proyecto usando Maven y Gradle

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

    Tipos de aplicaciones Web con JEE: Presentation vs Services

    13:44 min
  • 10
    Java Servlets

    Java Servlets

    Viendo ahora
  • 11
    Preguntas y respuestas en clase

    Preguntas y respuestas en clase

    20:20 min

Spring Framework y creación de un servicio REST

  • 12
    Preguntas antes de la clase

    Preguntas antes de la clase

    49:43 min
  • 13
    Servicio REST con Java

    Servicio REST con Java

    25:50 min
  • 14
    Inyección de dependencias

    Inyección de dependencias

    41:40 min
  • 15
    MVC con Spring framework

    MVC con Spring framework

    30:43 min
  • 16
    Preguntas y respuestas en clase

    Preguntas y respuestas en clase

    14:17 min

Proyecto Spring MVC a producción y Java 8

  • 17
    Preguntas antes de la clase

    Preguntas antes de la clase

    49:59 min
  • 18
    Lambdas con Java 8

    Lambdas con Java 8

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

    Proyecto a producción con AWS ElasticBeanstalk

    58:50 min
  • 20
    Preguntas y respuestas en clase

    Preguntas y respuestas en clase

    17:48 min

Complementos del curso

  • 21
    Unit testing en Java

    Unit testing en Java

    08:59 min
  • 22
    JSPs y sus alternativas

    JSPs y sus alternativas

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

    Persistencia en Java con JPA y Hibernate

    00:00 min
Tomar examen

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
        Alejandro Irimia Mesa

        Alejandro Irimia Mesa

        student•
        hace 10 años

        Estos son los pasos que hay que realizar para montar el proyecto en Eclipse desde cero.

        Prerrequisitos: Tener instalado previamente Maven

        Paso 1: Crear una carpeta nueva (siguiendo el ejemplo de la clase, servlet-platzi).
        Paso 2: Bajar el pom.xml de los archivos de esta clase y copiarlo en la carpeta creada.
        Paso 3: Con una ventana de comandos, situarnos en la carpeta en la que está el pom.xml
        Paso 4: Ejecutar el comando:

        mvn eclipse:eclipse

        Paso 5: Ejecutar el comando:

        mvn clean install

        De esta manera, se bajarán todas las dependencias necesarias para crear la clase Servlet
        Paso 6: Importar el proyecto generado en Eclipse
        Paso 7: Crear la carpeta de fuentes /src/main/java
        Paso 8: Crear el paquete y las clases que se utilizan durante toda la clase
        Paso 9: El uso del Tomcat se hace con el comando

        mvn tomcat7:run

        Un saludo.

          Don Jesús

          Don Jesús

          student•
          hace 9 años

          Gracias!!! Todo muy claro
          _

          leonardo84

          leonardo84

          student•
          hace 9 años

          hola hiciste los pasos al reves

        John Alexander Arias Castillo

        John Alexander Arias Castillo

        student•
        hace 10 años

        Me gustaria saber como hace el proyecto desde cero, aqui Oscar ya tiene el archivo pom.xml y todo incluido en el proyecto. Hay muchas cosas que se esta saltando para gente que esta aprendiendo java desde ceros.

          John Alexander Arias Castillo

          John Alexander Arias Castillo

          student•
          hace 10 años

          Ademas no me aparece la libreria javax.HTTPServlet

          Cesar David Ramírez Dimaté

          Cesar David Ramírez Dimaté

          student•
          hace 9 años

          Recuerda que las librerías se descargan del repositorio Maven, estas están definidas en el pom.xml y ubicándonos en la carpeta del proyecto se ejecuta el comando mvn eclipse:eclipse y mvn clean install.

        hugo vargas

        hugo vargas

        student•
        hace 10 años

        ¿por que no muestran como se crea el ejemplo desde cero?

          Ramses Martinez Ortiz

          Ramses Martinez Ortiz

          student•
          hace 9 años

          lo que no sabes, es que es un plan malevolo de platzi, para que no te guste java y aprendas a usar nuevas tecnologías XD !

          Daniel Rocha

          Daniel Rocha

          student•
          hace 9 años

          jajaa, que buena. pero lamentablemente necesitaba de java y lamentablemente en este curso dejan muchos cabos sueltos.

        Eder Weiß

        Eder Weiß

        student•
        hace 10 años

        Conceptos sobresalientes: Servlet, Filter y json.
        Anotaciones vistas hasta el momento: @WebServlet y @WebFilter
        Librería sobresaliente: jackson
        Paquete Java EE visto: javax.servlet.http

        Alex Muñoz

        Alex Muñoz

        student•
        hace 10 años

        con que tipo de proyecto se creo? no me aparece httpServlet. Estoy en los primeros pasos de spring

          José David Saborío

          José David Saborío

          student•
          hace 10 años

          es necesario agregar esta libreria (javax.servlet-3.0.jar)  al classpath de tu proyecto. dejo el link de descarga http//www.java2s.com/Code/Jar/j/Downloadjavaxservlet30jar.htm   y para agregarla seria : Haz click derecho sobre el proyecto al que quieres agregar la libreria y selecciona **Build Path → Add Libraries...,**Aparecerá un listado de librerías creadas por el usuario. Aquí vamos a crear una librería apropiada para que puedas asignarla a cualquier proyecto. Pulsa el botón que dice **“User Libraries...” o “Librerías de Usuario...”.**En esta pantalla vamos a crear la librería correspondiente, presionamos “Nueva...” le pones un NOMBRE y le damos al botón de “Agregar JARs...” y buscamos los jars (la libreria )que descargamos.

          Cesar David Ramírez Dimaté

          Cesar David Ramírez Dimaté

          student•
          hace 9 años

          No es necesario hacerlo tan manual. Por eso en el archivo pom.xml se definen las dependencias y las librerías que se van a utilizar. Para esto, te ubicas en la carpeta desde la terminal y ejecutas el comando mvn clean install. Esto lo que hará es descargar todas las librerías y limpiar todos los archivos .class y los .jar existentes.

        José David Saborío

        José David Saborío

        student•
        hace 10 años

        metadatos = datos acerca de los datos = @webServlet

        DAVID PAUL PORRAS CORDOVA

        DAVID PAUL PORRAS CORDOVA

        student•
        hace 10 años

        Serialización: Convertir Objeto Java a Json 
        Desealización: Convertir de Json a Objeto Java.

        Francisco Javier Jiménez Iglesias

        Francisco Javier Jiménez Iglesias

        student•
        hace 10 años

        Los scopes son objetos utilizados por la tecnología web y por nosotros para almacenar valores o****trasmitir información entre el cliente y el servidor.
        Dependiendo de la durabilidad deseada para esta información, se almacenan en:

        request: Si esa información se refiere al último request o intercambio.
        **session:**Si se mantiene durante toda la sesión de ese usuario.
        application: Si es permanente, hasta que el servidor se reinicie.

        En este caso en concreto, al utilizar REST, estamos trabajando con un sistema de comunicación donde cada respuesta actúa de forma independiente, por lo que no necesitamos el concepto de sessión, ya que no hay nada que el usuario pueda enviarnos que condicione las respuestas del servidor en futuras consultas.

        Alan Omar Lopez Gonzalez Lopez

        Alan Omar Lopez Gonzalez Lopez

        student•
        hace 10 años

        alguien sabe donde encuentro el tutorial de java jee del que habla Oscar Bernal?

          Cesar David Ramírez Dimaté

          Cesar David Ramírez Dimaté

          student•
          hace 9 años

          El que menciona al min 5:42 sería este

          Cesar David Ramírez Dimaté

          Cesar David Ramírez Dimaté

          student•
          hace 9 años

          Encontré el PDF con el que el profesor se ha basado en dar el curso hasta ahora, es un manual propio de Oracle…

        Carlos Alberto Solano Guzmán

        Carlos Alberto Solano Guzmán

        student•
        hace 10 años

        Donde esta el tutorial de JEE? 

          Uriel Ramírez

          Uriel Ramírez

          student•
          hace 10 años

          El hace referencia al tutorial de la documentación oficinal de JEE: 

          Cesar David Ramírez Dimaté

          Cesar David Ramírez Dimaté

          student•
          hace 9 años

          Así es, este sería el enlace directo.

        Francisco Javier Jiménez Iglesias

        Francisco Javier Jiménez Iglesias

        student•
        hace 10 años

        Crear Servlet:

        1. En una nueva clase extender HttpServlet (previo import si necesario)
        2. Anotar que es un @WebServlet
        3. Hacer override de doGet() y/o doPost()
        4. Usar los parámetros "req" de estas funciones para leer lo que nos envía el cliente y "res" para preparle una respuesta.
        5. Se debe indicar el tipo de datos que vamos a leer/escribir, si es html, si es JSON...  
        Felipe arias

        Felipe arias

        student•
        hace 10 años

        Donde esta el tutorial de JEE que dice en 40:23 y donde están los archivos de ejemplo de los Servlet?

          Leonardo Pachon

          Leonardo Pachon

          student•
          hace 10 años

          Aca esta el repo 

          Leonardo Pachon

          Leonardo Pachon

          student•
          hace 10 años

          Aca esta el repo 

        Daniel Rocha

        Daniel Rocha

        student•
        hace 9 años

        Iniciar un proyecto Maven (Web App) En Netbeans y aumentar las dependencias en el pom generado. Dar clean and build antes de ejecutar y probar los cambios realizados.

        Algo tan sensillo que a muchos nos dio dolor de cabeza porque el instrucor no lo dijo.

          Cesar David Ramírez Dimaté

          Cesar David Ramírez Dimaté

          student•
          hace 9 años

          Eso lo aprendes desde el curso de Java Básico… Incluso en las guías de instalación de Maven y Gradle. También algo de sentido común. Cuando tu modificas tu código, si o si tienes que limpiar los .class y volverlos a generar, acuerdate que son archivos bitcode que se leen en el JVM, en este caso en nuestro servidor web.

        Julian Gomez

        Julian Gomez

        student•
        hace 10 años

        Muy buena clase, muy completa siendo basica. me gusta que no se ponen a profundizar en servlets sino lo basico , ya que se no es necesario para la parte de WS REStful. El expositor Explica cosas, pero debes tener un contexto, imagino que por ser un curso avanzado. Para mi todo fue claro

          Cesar David Ramírez Dimaté

          Cesar David Ramírez Dimaté

          student•
          hace 9 años

          De igual manera si es importante que sea organizado. En el sentido de bueno, vamos a crear un proyecto desde ceros, cómo lo creo, archivos, carpetas, qué comandos ejecuto para descargar las dependencias definidas en el pom.xml, cómo ejecuto el servidor y sobretodo, cómo puedo realizar debug en Eclipse.

        José David Saborío

        José David Saborío

        student•
        hace 10 años

        plugin de toncat= mvn toncat7:run

          José David Saborío

          José David Saborío

          student•
          hace 10 años

          se ejecuta donde tenemos el POM.XML

          José David Saborío

          José David Saborío

          student•
          hace 10 años

          este plugin se ejecuta desde donde esta el archivo POM.xml

        Francisco Javier Jiménez Iglesias

        Francisco Javier Jiménez Iglesias

        student•
        hace 10 años

        Debido a que este curso está enfocado a desarrollar servicios o no una arquitectura web completa se elige Tomcat , ya que es más ligero; en vez de opciones como JBOSS, que son más completos en funcionalidades que no aplican en este contexto.

          Cesar David Ramírez Dimaté

          Cesar David Ramírez Dimaté

          student•
          hace 9 años

          Más que todo el hecho de lo que menciona Oscar. Glassfish o JBoss se utilizan para trabajar con toda la arquitectura de JEE, más que todo orientado a la presentación y capas de negocio (JSF, EJB).

          Para hacer aplicaciones web RESTful, sólo se necesitará un contenedor web, y con Tomcat será más que suficiente para esto.

        Francisco Javier Jiménez Iglesias

        Francisco Javier Jiménez Iglesias

        student•
        hace 10 años

        El Tomcat plugin de Maven nos facilita poder ejecutar nuestra aplicación desde Maven sin tener que instalar Tomcat expresamente.

        Francisco Javier Jiménez Iglesias

        Francisco Javier Jiménez Iglesias

        student•
        hace 10 años

        Las anotaciones en el código ( @WebServlet y @WebFilter, etc) se utilizan para indicar al "builder"  o empaquetador (Maven) como se estructura nuestra aplicación.
        Han venido a reemplazar a los archivos de configuración en .xml que se usaban anteriormente para este fin.

        Francisco Javier Jiménez Iglesias

        Francisco Javier Jiménez Iglesias

        student•
        hace 10 años

        Jersey es un framework que ayuda al desarrollo de servicios REST en Java.

        Francisco Javier Jiménez Iglesias

        Francisco Javier Jiménez Iglesias

        student•
        hace 10 años

        Groovy es un lenguaje que se ejecuta en el mismo entorno que java (JVM), lo que le hace ser fácilmente integrable con este lenguaje. 
        La diferencia es que Groovy es un lenguaje "interpretado", eso quiere decir que no es tan estricto en su sintaxis asumiendo parte de la inteligencia de la programación, eso implica una mayor vulnerabilidad a errores en el cógido pero cambio nos ofrece una mayor rapidez en la escritura.