• Like
Clase servletsaccesobd
Upcoming SlideShare
Loading in...5
×

Clase servletsaccesobd

  • 455 views
Uploaded on

data java

data java

More in: Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
455
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
20
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. REALIZADO POR : SIMEON HUAMANCHAO GOMEZ
  • 2. Servlets con acceso a Bases de Datos
  • 3. Índice
    • Repaso de JDBC
    • Repaso de Servlets
      • ¿Qué es un Servlet?
      • Estructura de un Servlet – Ciclo de vida
    • Servlets con acceso a Bases de Datos
    • Ejemplo 1: Escribir en una Base de Datos
    • Ejemplo 2: Consultar una Base de Datos
  • 4. JDBC
    • API de Java para ejecutar sentencias SQL
    • JDBC posibilita básicamente tres cosas:
      • Establecer una conexión con una base de datos desde Java
      • Enviar sentencias SQL a través de dicha conexión
      • Procesar los resultados
    • La JDBC 3.0 API comprende 2 paquetes:
      • java.sql
      • javax.sql
  • 5. JDBC de forma esquemática ResultSet Statement Connection DriverManager JDBC-ODBC Bridge ODBC Driver ODBC Database Aplicación Cliente
  • 6. Utilización de JDBC 3.0 API Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String url = ″jdbc:odbc:wombat″; Connection con = DriverManager.getConnection(url); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(″SELECT a, b, c FROM Table2″); While(rs.next()){ int i = rs.getInt(  a  ); String s = rs.getString(  b  ); Float f = rs.getFloat(  c  ) ; System.out.println(  ROW=  + i +   + s +   + f); }
  • 7. Servlets
    • Programas en Java que se ejecutan en un servidor HTTP (servidor Web)
    • Actúan como capa intermedia entre:
      • Petición proviniente de un Navegador Web u otro cliente HTTP
      • Bases de Datos o Aplicaciones en el servidor HTTP
    Servidor Web Servlet BD externa BD Aplicación
  • 8. Cuándo y por qué usar Servlets
    • Muchas peticiones desde navegador se satisfacen retornando documentos HTML estáticos , es decir, que están en ficheros
    • En ciertos casos, es necesario generar las páginas HTML para cada petición:
      • Página Web basada en datos enviados por el cliente
        • Motores de búsqueda, confirmación de pedidos
      • Página Web derivada de datos que cambian con frecuencia
        • Informe del tiempo o noticias de última hora
      • Página Web que usa información de bases de datos corporativas u otras fuentes del la parte del servidor
        • Comercio electrónico: precios y disponibilidades
  • 9. Estructura de un HttpServlet HttpServlet
    • Método init()
    • Se ejecuta una sola vez al inicializar el Servlet
    • Inicializar variables y operaciones costosas en tiempo de ejecución
    • Método destroy()
    • Lo llama el servidor al “apagarse”
    • Cerrar procesos en curso, liberar memoria, cerrar ficheros
    • Métodos doGet() o doPost()
    • Recoger peticiones del usuario y ejecutar operaciones
    • Mandar respuesta al usuario (en forma de HTML)
    Otros métodos de usuario Objeto HttpServletRequest Objeto HttpServletResponse
  • 10. Servlets con acceso a Base de Datos
    • Conexión a Bases de Datos
      • Tarea importante y frecuente de los Servlets
    • Servlets
      • Funciones de capa intermedia en sistemas con arquitectura de tres capas
    • Ventajas:
      • Nivel intermedio: control de operaciones contra la Base de Datos
      • Drivers JDBC no tienen que estar en el cliente
      • Se puede tener constancia de lo que ha hecho el usuario en peticiones anteriores
      • Sincronización de peticiones
  • 11. Estructura de un Servlet con acceso a DB HttpServlet
    • Método init()
    • Establecer conexión con la Base de Datos
    • Método destroy()
    • Cerrar la conexión con la Base de Datos
    • Métodos doGet() o doPost()
    • Interacción con la Base de Datos
      • Bien en el propio cuerpo de estos métodos
      • Bien mediante llamadas a otros métodos de usuario
    Otros métodos de usuario: actualizarBaseDeDatos() ... Objeto Connection
  • 12. Ejemplo 1: Escribir en una Base de Datos
    • Base de Datos Access
      • ServletOpinion2.mdb
    • Data Source Name (DSN)
      • opinion
    • Página HTML:
      • MiServlet2.html
    • Servlet
      • ServletOpinion2.java -> ServletOpinion2.class
    • Arrancar Tomcat 5.5
  • 13. Ejemplo 2: Consultar una Base de Datos
    • Base de Datos Access
      • Alumnos.mdb
    • Data Source Name (DSN)
      • alumnos
    • Página HTML:
      • Formulario2.html
    • Servlet
      • ListaAlumnos.java -> ListaAlumnos.class
    • Arrancar Tomcat 5.5