SlideShare una empresa de Scribd logo
INTRODUCCIÓN A LAS
APLICACIONES WEB Y
TECNOLOGÍA JAVA
Jaime Fernández
Mayo 2006
Índice
 Java
 Aplicaciones web
 Servlets – JSP
 Servidores de aplicaciones – IDE`s
 Ejemplo
Java
 Historia
 Lenguaje orientado a objetos creado por Sun
Microsystems
• Encapsulación – ocultacion de datos y metodos
• Herencia
• Polimorfismo – circulo.area() , cuadrado.area()
 Éxito alcanzado gracias a:
• Internet: aplicaciones web
• “Independencia” del S.O. y plataforma
• Marketing
Plataforma Java
Java Language
Java Bytecode
Java Virtual Machine
Java API
Plataform
Características
 El código Java se estructura en clases
 Las clases se estructuran a su vez en paquetes
 Clase Object de la que derivan las demás
 Los tipos básicos no son clases
 void, char, boolean, byte, int, array
 Herencia simple:
 las clases derivadas pueden añadir variables y (re)definir
métodos
 Herencia múltiple: interfaces
 no definen ninguno de sus métodos y únicamente declaran
constantes
class Circulo extends Figura implements Superficie
CONTROL DE ACCESO
- En variables y métodos miembro
- Tres tipos:
- public
- protected
- private
Modificador acceso Public Protected Private
Misma clase   
Subclase  [*] 
Clase externa en el
mismo paquete   
Clase externa en
otro paquete   
Concepto de static
- Afecta a variables y métodos
- Hacen referencia a la clase (no al objeto)
- Se inicializan justo antes de utilizar por
primera vez la clase
- Llamada:
- Clase.variable (objeto.variable -> no aconsejado).
- Clase.metodo()
- Ej: Math.cos()
Aplicaciones Web
Pila de protocolos
HTTP
TCP
MAC - LLC
FÍSICO
IP
HTML
Modelo Cliente Servidor
 Cuando un usuario desea acceder a una
determinada página web, utiliza un
navegador
 Similarmente en el otro extremo se
precisa un servidor
HTTP
Evolución
 Inicialmente, únicamente información
estática.
 HTML estático
 Aplicaciones “pobres”
 Posteriormente, ejecución de código en
el lado del cliente:
 HTML dinámico: JavaScript
 Principalmente mejoras de interfaz
Evolución (II)
 Programación en el lado del servidor:
 CGIs
 Páginas ASP
 Páginas JSP, servlets
 PHP
 J2EE, .NET
 Zope, Ruby on Rails
 …
Evolución (III)
 Web Services
 Interoperabilidad entre servidores y clientes
 Programación de procedimientos remotos
 WSDL
 SOAP, XML-RPC
 WS-Security
SERVLET – JSP
TECNOLOGÍA SERVLET
INTRODUCCION
 Son la respuesta de la tecnología Java a
la programación CGI.
 Programas Java que se ejecutan en el
SERVIDOR y construyen dinámicamente
una página HTML
Servlets – Caracteristicas
 Tienen acceso a todas las Apis de Java: JDBC,
JavaMail, etc..
 Permiten utilizar cookies y seguimiento de
sesiones (HttpSession), muy útiles para el
desarrollo de aplicaciones Web.
 Define métodos para atender a cada una de las
peticiones de HTTP que se puedan dar: doGet,
doPost, doPut...
 Dos Parámetros importantes:
• HttpServletRequest: modeliza la petición del usuario y
contiene información de la petición HTTP realizada
• HttpServletResponse: objeto que implementa la conexión
de salida con el usuario
Servlets – Comparativa con CGI
 Eficiencia: CGI arranca un proceso por cada
llamada. En Servlets, por cada llamada se
controla por un thread de Java
 Potencia: Permite hacer fácilmente cosas que
son complicadas de hacer con CGI normal
 Portabilidad: Escrito en Java
 Funcionalidad: acceso a la Api de Java
 Barato: añadir soporte para servlets en un
servidor web es gratuito o muy barato
Servlets - Funcionamiento
cliente servidor
servlet
pagina.html
Servlets - Ejemplo
 http://miservidor:8080/HelloWorld?nombre=Iñaki
 Servlet que escribe código HTML
public class HelloWorld extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException {
response.setContentType("text/html");
String nom = request.getParameter(“nombre”);
PrintWriter out = response.getWriter();
out.println( "<HTML>n" +
"<HEAD><TITLE>Hello World</TITLE></HEAD>n" +
"<BODY>n" +
"<H1>Hello World, + nom + </H1>n" +
"</BODY>+
</HTML>" );
}
}
Tecnología JSP – Introduccion
 Es un fichero de texto con etiquetas HTML
y código java embebido
 Se compilan automáticamente según se
necesitan: se convierte en un servlet
 Desde un JSP: uso de JavaBeans, uso de
JDBC. Cualquier clase de Java
JSP - Ejemplo
<%@ page import=“ java.util.*” %>
<html>
<head>
<title>Ejemplo de JSP</title>
</head>
<body>
<% Date date = new Date();
String hoy = DateFormat.getDateInstance().format(d);%>
<h1> Hola, <%request.getParameter(“nombre”)%></h2>
<br>
<h2>Hoy es : <%= hoy %> </h2>
</body>
</html>
servlet
fichero jsp
compilación
JSP vs Servlet
• Servlets: Java con HTML embebido
• JSPs: HTML con Java embebido
 Semejanzas:
 JSP son una extensión de Servlets. No aporta
funcionalidades nuevas
 Un JSP compilado es un Servlet
 Misma función: construir contenido dinámico
 Diferencias:
 JSP separa más claramente el diseño de la lógica
 Más sencillo modificar código HTML que miles de
sentencias println
CONTROL
JSP – SERVLET:
FUNCIONAMIENTO GENERAL
cliente servidor
servlet
jsp
MODELO
VISTA
IDE´S - SERVIDORES
IDE´s
 Alternativa a la línea de comandos
 Integración de herramientas:
 Compilación
 Depuración (necesitan el SDK)
 Ant, CVS…
 Modulares: ampliables mediante plugins
 Ayuda a la programación
IDE´s
 Eclipse:
 Open Source, impulsado por IBM
 meta-IDE: sirve para muchas cosas
 SWT: sustituye a AWT y Swing
 NetBeans:
 Open Source, desarrollado por Sun
 Generación automática de plantillas
 Java 100% estándar
Otros IDE
 BlueJ (http://www.bluej.org/) - Software libre
 jCreator (http://www.jcreator.com/) - Software
propietario, versión gratuita disponible.
 Sun Java Studio
(http://wwws.sun.com/software/sundev/jde/) -
Software propietario, extensión de netBeans.
 JBuilder (http://www.borland.com/jbuilder/) -
Software propietario
 IntelliJ IDEA (http://www.jetbrains.com/idea/) -
Software propietario
Motor de Servlet
 Aplicación que contiene la aplicación java
 Necesario para ejecutar los servlet y jsp
 Productos
 Apache Tomcat
 BEA WebLogic
 IBM WebSphere
 Sun/Netscape IPlanet
 Macromedia JRun
 …
EJEMPLO PRÁCTICO

Más contenido relacionado

PPT
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
PPTX
Charla
PDF
Introducción al desarrollo de aplicaciones web en Java
PDF
[ES] Introducción a las Aplicaciones Web con Java
PDF
SERVLET BASICS
PDF
[ES] Introdución al desarrollo de aplicaciones web en java
PDF
Introducción a Tomcat
PPTX
Jsp(java server pages)
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
Charla
Introducción al desarrollo de aplicaciones web en Java
[ES] Introducción a las Aplicaciones Web con Java
SERVLET BASICS
[ES] Introdución al desarrollo de aplicaciones web en java
Introducción a Tomcat
Jsp(java server pages)

Similar a introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt (20)

PDF
Herramientas de Desarrollo de Sistemas
PDF
Serlets y jsp prev
PDF
Serlets y jsp pre
PPT
J2 Ee Para Seres Humanos Slides
PDF
PDF
Sesion06 apuntes
PPT
Curso Java Avanzado 3 Js Ps
PDF
Manual programacion - java - jsp & xml
PDF
Tutor Java Web
PPT
Programación en Internet
PPTX
Java Web - Servlet
PDF
Introducción a las aplicaciones web con java
PPT
Curso Java Avanzado 2 Servlets
PDF
Programacion web java
PPTX
Servlet
PPT
Servlets y jsp
PDF
20001215 Programación de Servlets y WML
PDF
Eclipse
PDF
I introduccion a_las_aplicaciones_web_co
Herramientas de Desarrollo de Sistemas
Serlets y jsp prev
Serlets y jsp pre
J2 Ee Para Seres Humanos Slides
Sesion06 apuntes
Curso Java Avanzado 3 Js Ps
Manual programacion - java - jsp & xml
Tutor Java Web
Programación en Internet
Java Web - Servlet
Introducción a las aplicaciones web con java
Curso Java Avanzado 2 Servlets
Programacion web java
Servlet
Servlets y jsp
20001215 Programación de Servlets y WML
Eclipse
I introduccion a_las_aplicaciones_web_co
Publicidad

Último (20)

DOCX
Cumplimiento normativo y realidad laboral
PDF
LIBRO UNIVERSITARIO DESARROLLO ORGANIZACIONAL BN.pdf
PPT
Sustancias Peligrosas de empresas para su correcto manejo
PDF
GUÍA PARA LA IMPLEMENTACIÓN DEL PLAN PARA LA REDUCCIÓN DEL RIESGO DE DESASTRES
PDF
LIBRO UNIVERSITARIO SOFTWARE PARA INGENIERIA BN.pdf
PPT
PRIMEROS AUXILIOS EN EL SECTOR EMPRESARIAL
PPTX
MODULO 1.SEGURIDAD Y SALUD CONCEPTOS GENERALES.pptx
PPTX
MODULO 2. METODOLOGIAS PARA ANALISIS DE RIESGOS 2da Parte.pptx
PPTX
376060032-Diapositivas-de-Ingenieria-ESTRUCTURAL.pptx
PDF
Sugerencias Didacticas 2023_Diseño de Estructuras Metalicas_digital.pdf
PDF
Perfilaje de Pozos _20250624_222013_0000.pdf
PPTX
DEBL Presentación PG 23.pptx [Autoguardado].pptx
PPTX
OPERACION DE MONTACARGAS maneji seguro de
PPTX
Manual ISO9001_2015_IATF_16949_2016.pptx
PPTX
GEOLOGIA, principios , fundamentos y conceptos
PDF
Curso Introductorio de Cristales Liquidos
PDF
Sustitucion_del_maiz_por_harina_integral_de_zapall.pdf
PPTX
clase MICROCONTROLADORES ago-dic 2019.pptx
PDF
LIBRO UNIVERSITARIO INTELIGENCIA ALGORITMICA BN.pdf
PDF
FIJA NUEVO TEXTO DE LA ORDENANZA GENERAL DE LA LEY GENERAL DE URBANISMO Y CON...
Cumplimiento normativo y realidad laboral
LIBRO UNIVERSITARIO DESARROLLO ORGANIZACIONAL BN.pdf
Sustancias Peligrosas de empresas para su correcto manejo
GUÍA PARA LA IMPLEMENTACIÓN DEL PLAN PARA LA REDUCCIÓN DEL RIESGO DE DESASTRES
LIBRO UNIVERSITARIO SOFTWARE PARA INGENIERIA BN.pdf
PRIMEROS AUXILIOS EN EL SECTOR EMPRESARIAL
MODULO 1.SEGURIDAD Y SALUD CONCEPTOS GENERALES.pptx
MODULO 2. METODOLOGIAS PARA ANALISIS DE RIESGOS 2da Parte.pptx
376060032-Diapositivas-de-Ingenieria-ESTRUCTURAL.pptx
Sugerencias Didacticas 2023_Diseño de Estructuras Metalicas_digital.pdf
Perfilaje de Pozos _20250624_222013_0000.pdf
DEBL Presentación PG 23.pptx [Autoguardado].pptx
OPERACION DE MONTACARGAS maneji seguro de
Manual ISO9001_2015_IATF_16949_2016.pptx
GEOLOGIA, principios , fundamentos y conceptos
Curso Introductorio de Cristales Liquidos
Sustitucion_del_maiz_por_harina_integral_de_zapall.pdf
clase MICROCONTROLADORES ago-dic 2019.pptx
LIBRO UNIVERSITARIO INTELIGENCIA ALGORITMICA BN.pdf
FIJA NUEVO TEXTO DE LA ORDENANZA GENERAL DE LA LEY GENERAL DE URBANISMO Y CON...
Publicidad

introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt

  • 1. INTRODUCCIÓN A LAS APLICACIONES WEB Y TECNOLOGÍA JAVA Jaime Fernández Mayo 2006
  • 2. Índice  Java  Aplicaciones web  Servlets – JSP  Servidores de aplicaciones – IDE`s  Ejemplo
  • 3. Java  Historia  Lenguaje orientado a objetos creado por Sun Microsystems • Encapsulación – ocultacion de datos y metodos • Herencia • Polimorfismo – circulo.area() , cuadrado.area()  Éxito alcanzado gracias a: • Internet: aplicaciones web • “Independencia” del S.O. y plataforma • Marketing
  • 4. Plataforma Java Java Language Java Bytecode Java Virtual Machine Java API Plataform
  • 5. Características  El código Java se estructura en clases  Las clases se estructuran a su vez en paquetes  Clase Object de la que derivan las demás  Los tipos básicos no son clases  void, char, boolean, byte, int, array  Herencia simple:  las clases derivadas pueden añadir variables y (re)definir métodos  Herencia múltiple: interfaces  no definen ninguno de sus métodos y únicamente declaran constantes class Circulo extends Figura implements Superficie
  • 6. CONTROL DE ACCESO - En variables y métodos miembro - Tres tipos: - public - protected - private Modificador acceso Public Protected Private Misma clase    Subclase  [*]  Clase externa en el mismo paquete    Clase externa en otro paquete   
  • 7. Concepto de static - Afecta a variables y métodos - Hacen referencia a la clase (no al objeto) - Se inicializan justo antes de utilizar por primera vez la clase - Llamada: - Clase.variable (objeto.variable -> no aconsejado). - Clase.metodo() - Ej: Math.cos()
  • 9. Pila de protocolos HTTP TCP MAC - LLC FÍSICO IP HTML
  • 10. Modelo Cliente Servidor  Cuando un usuario desea acceder a una determinada página web, utiliza un navegador  Similarmente en el otro extremo se precisa un servidor HTTP
  • 11. Evolución  Inicialmente, únicamente información estática.  HTML estático  Aplicaciones “pobres”  Posteriormente, ejecución de código en el lado del cliente:  HTML dinámico: JavaScript  Principalmente mejoras de interfaz
  • 12. Evolución (II)  Programación en el lado del servidor:  CGIs  Páginas ASP  Páginas JSP, servlets  PHP  J2EE, .NET  Zope, Ruby on Rails  …
  • 13. Evolución (III)  Web Services  Interoperabilidad entre servidores y clientes  Programación de procedimientos remotos  WSDL  SOAP, XML-RPC  WS-Security
  • 15. TECNOLOGÍA SERVLET INTRODUCCION  Son la respuesta de la tecnología Java a la programación CGI.  Programas Java que se ejecutan en el SERVIDOR y construyen dinámicamente una página HTML
  • 16. Servlets – Caracteristicas  Tienen acceso a todas las Apis de Java: JDBC, JavaMail, etc..  Permiten utilizar cookies y seguimiento de sesiones (HttpSession), muy útiles para el desarrollo de aplicaciones Web.  Define métodos para atender a cada una de las peticiones de HTTP que se puedan dar: doGet, doPost, doPut...  Dos Parámetros importantes: • HttpServletRequest: modeliza la petición del usuario y contiene información de la petición HTTP realizada • HttpServletResponse: objeto que implementa la conexión de salida con el usuario
  • 17. Servlets – Comparativa con CGI  Eficiencia: CGI arranca un proceso por cada llamada. En Servlets, por cada llamada se controla por un thread de Java  Potencia: Permite hacer fácilmente cosas que son complicadas de hacer con CGI normal  Portabilidad: Escrito en Java  Funcionalidad: acceso a la Api de Java  Barato: añadir soporte para servlets en un servidor web es gratuito o muy barato
  • 18. Servlets - Funcionamiento cliente servidor servlet pagina.html
  • 19. Servlets - Ejemplo  http://miservidor:8080/HelloWorld?nombre=Iñaki  Servlet que escribe código HTML public class HelloWorld extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); String nom = request.getParameter(“nombre”); PrintWriter out = response.getWriter(); out.println( "<HTML>n" + "<HEAD><TITLE>Hello World</TITLE></HEAD>n" + "<BODY>n" + "<H1>Hello World, + nom + </H1>n" + "</BODY>+ </HTML>" ); } }
  • 20. Tecnología JSP – Introduccion  Es un fichero de texto con etiquetas HTML y código java embebido  Se compilan automáticamente según se necesitan: se convierte en un servlet  Desde un JSP: uso de JavaBeans, uso de JDBC. Cualquier clase de Java
  • 21. JSP - Ejemplo <%@ page import=“ java.util.*” %> <html> <head> <title>Ejemplo de JSP</title> </head> <body> <% Date date = new Date(); String hoy = DateFormat.getDateInstance().format(d);%> <h1> Hola, <%request.getParameter(“nombre”)%></h2> <br> <h2>Hoy es : <%= hoy %> </h2> </body> </html> servlet fichero jsp compilación
  • 22. JSP vs Servlet • Servlets: Java con HTML embebido • JSPs: HTML con Java embebido  Semejanzas:  JSP son una extensión de Servlets. No aporta funcionalidades nuevas  Un JSP compilado es un Servlet  Misma función: construir contenido dinámico  Diferencias:  JSP separa más claramente el diseño de la lógica  Más sencillo modificar código HTML que miles de sentencias println
  • 23. CONTROL JSP – SERVLET: FUNCIONAMIENTO GENERAL cliente servidor servlet jsp MODELO VISTA
  • 25. IDE´s  Alternativa a la línea de comandos  Integración de herramientas:  Compilación  Depuración (necesitan el SDK)  Ant, CVS…  Modulares: ampliables mediante plugins  Ayuda a la programación
  • 26. IDE´s  Eclipse:  Open Source, impulsado por IBM  meta-IDE: sirve para muchas cosas  SWT: sustituye a AWT y Swing  NetBeans:  Open Source, desarrollado por Sun  Generación automática de plantillas  Java 100% estándar
  • 27. Otros IDE  BlueJ (http://www.bluej.org/) - Software libre  jCreator (http://www.jcreator.com/) - Software propietario, versión gratuita disponible.  Sun Java Studio (http://wwws.sun.com/software/sundev/jde/) - Software propietario, extensión de netBeans.  JBuilder (http://www.borland.com/jbuilder/) - Software propietario  IntelliJ IDEA (http://www.jetbrains.com/idea/) - Software propietario
  • 28. Motor de Servlet  Aplicación que contiene la aplicación java  Necesario para ejecutar los servlet y jsp  Productos  Apache Tomcat  BEA WebLogic  IBM WebSphere  Sun/Netscape IPlanet  Macromedia JRun  …