ServletsJDBC - PowerPoint PPT Presentation

About This Presentation
Title:

ServletsJDBC

Description:

Cerrar procesos en curso, liberar memoria, cerrar ficheros. M todos doGet() o doPost ... Cerrar la conexi n con la Base de Datos. M todos doGet() o doPost ... – PowerPoint PPT presentation

Number of Views:23
Avg rating:3.0/5.0
Slides: 13
Provided by: MCO145
Category:

less

Transcript and Presenter's Notes

Title: ServletsJDBC


1
Servlets con acceso a Bases de Datos 21 de
Marzo de 2007
2
Í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

3
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

4
JDBC de forma esquemática
ResultSet
Statement
Aplicación Cliente
Connection
DriverManager
JDBC-ODBC Bridge
ODBC Driver
ODBC Database
5
Utilización de JDBC 3.0 API
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") St
ring url ?jdbcodbcwombat? 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)
6
Servlets
  • Programas en Java que se ejecutan en un servidor
    HTTP (servidor Web)
  • Actúan como capa intermedia entre
  • Petición proveniente de un Navegador Web u otro
    cliente HTTP
  • Bases de Datos o Aplicaciones en el servidor HTTP

Servidor Web
BD
BD externa
Servlet
Aplicación
7
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

8
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étodos doGet() o doPost()
  • Recoger peticiones del usuario y ejecutar
    operaciones
  • Mandar respuesta al usuario (en forma de HTML)

Otros métodos de usuario
  • Método destroy()
  • Lo llama el servidor al apagarse
  • Cerrar procesos en curso, liberar memoria, cerrar
    ficheros

9
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

10
Estructura de un Servlet con acceso a DB
HttpServlet
Objeto Connection
  • Método init()
  • Establecer 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().
..
  • Método destroy()
  • Cerrar la conexión con la Base de Datos

11
Ejemplo 1 Escribir en una Base de Datos
  • Base de Datos Access
  • ServletOpinion2.mdb
  • Data Source Name (DSN)
  • opinion
  • Página HTML
  • MiServlet.html
  • Servlet
  • ServletOpinion2.java -gt ServletOpinion2.class
  • Arrancar Tomcat 5.5

12
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 -gt ListaAlumnos.class
  • Alumno.java -gt Alumno.class
  • Arrancar Tomcat 5.5
Write a Comment
User Comments (0)
About PowerShow.com