Академический Документы
Профессиональный Документы
Культура Документы
http://chuwiki.chuidiang.org/index.php?title=Consulta_de_Base_de_Da...
Consulta de Base de Datos con JSP usando una Clase Java separada
0
Twittear 0
De ChuWiki
Contenido
1 Introduccin 2 La clase Contacto 3 La clase de consultas a base de datos 4 La pgina JSP 5 Meter todo en tomcat
Introduccin
Vimos en Consulta de Base de Datos desde JSP que podiamos meter todo el cdigo java dentro de una pgina jsp. En ese ejemplo hicimos una consulta a base de datos para mostrar en el navegador los resultados. Vamos a hacer ahora el mismo ejemplo, pero llevndonos parte del cdigo java que estaba dentro de la pgina jsp a una clase Java separada, de forma que desde jsp llamaremos a esa clase. En el ejemplo anterior usbamos una base de datos MySQL con una tabla as
mysql> describe contacto; +-----------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | nombre | varchar(20) | YES | | NULL | | | apellidos | varchar(20) | YES | | NULL | | | telefono | varchar(20) | YES | | NULL | | +-----------+-------------+------+-----+---------+----------------+ 4 rows in set (1.17 sec)
La clase Contacto
1 de 4 04/01/2012 2:22
Consulta de Base de Datos con JSP usando una Clase Java separada - ...
http://chuwiki.chuidiang.org/index.php?title=Consulta_de_Base_de_Da...
Nos har falta una clase java para representar cada uno de los registros en la tabla anterior. Haremos una clase Contacto, con cuatro atributos, uno por campo, y los mtodos get y set adecuados para cada campo. La clase puede ser as
package chuidiang.ejemplos; public class Contacto { int id; String nombre; String apellido; String telefono; public String getApellido() { return apellido; } public void setApellido(String apellido) { this.apellido = apellido; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getNombre() { return nombre; } public void setNombre(String nombre) { this.nombre = nombre; } public String getTelefono() { return telefono; } public void setTelefono(String telefono) { this.telefono = telefono; } }
public class ConsultaAgenda { public static LinkedList<Contacto> getContactos() { LinkedList<Contacto> listaContactos=new LinkedList<Contacto>(); try { Class.forName("org.gjt.mm.mysql.Driver"); Connection conexion = DriverManager.getConnection( "jdbc:mysql://localhost/agenda", "usuario", "password"); Statement st = conexion.createStatement(); ResultSet rs = st.executeQuery("select * from contacto" ); while (rs.next()) { Contacto contacto = new Contacto(); contacto.setId(rs.getInt("id")); contacto.setNombre(rs.getString("nombre")); contacto.setApellido(rs.getString("apellidos")); contacto.setTelefono(rs.getString("telefono")); listaContactos.add(contacto); } rs.close(); st.close(); conexion.close(); } catch (Exception e) { e.printStackTrace();
2 de 4
04/01/2012 2:22
Consulta de Base de Datos con JSP usando una Clase Java separada - ...
http://chuwiki.chuidiang.org/index.php?title=Consulta_de_Base_de_Da...
} return listaContactos; } }
La pgina JSP
Ahora slo nos queda la pgina jsp. En la pgina jsp debemos poner los import de nuestras dos clases Java y del LinkedList que nos devuelve la clase ConsultaAgenda. Simplemente hacemos la consulta llamando a la ClaseAgenda y luego hacemos un bucle para ir metiendo los resultados en un TABLE de html.
<!-- Los import --> <%@ page language="java" %> <%@ page import = "chuidiang.ejemplos.Contacto"%> <%@ page import = "chuidiang.ejemplos.ConsultaAgenda"%> <%@ page import = "java.util.LinkedList"%> <html> <body> <h1>Consulta a base de datos</h1> <table border="1"> <tr> <td>id</td> <td>nombre</td> <td>apellido</td> <td>telefono</td> </tr> <% LinkedList<Contacto> lista = ConsultaAgenda.getContactos(); for (int i=0;i<lista.size();i++) { out.println("<tr>"); out.println("<td>"+lista.get(i).getId()+"</td>"); out.println("<td>"+lista.get(i).getNombre()+"</td>"); out.println("<td>"+lista.get(i).getApellido()+"</td>"); out.println("<td>"+lista.get(i).getTelefono()+"</td>"); out.println("</tr>"); } %> </table> </body> </html>
3 de 4
04/01/2012 2:22
Consulta de Base de Datos con JSP usando una Clase Java separada - ...
http://chuwiki.chuidiang.org/index.php?title=Consulta_de_Base_de_Da...
Otra opcin es meter nuestros dos .class en un fichero .jar y meterlo en el directorio lib Con todo esto, ya no hay que hacer sino visualizar en el navegador http://localhost:8080/NuestroEjemplo y deberamos ver nuestra lista de contactos almacenados en la base de datos. Obtenido de "http://chuwiki.chuidiang.org /index.php?title=Consulta_de_Base_de_Datos_con_JSP_usando_una_Clase_Java_separada" Categora: J2EE
Esta pgina fue modificada por ltima vez el 20:38, 25 abr 2007.
Esta obra est bajo una licencia de Creative Commons. Para reconocer la autora debes poner http://www.chuidiang.com/chuwiki
4 de 4
04/01/2012 2:22