Vous êtes sur la page 1sur 3

EJEMPLO DE CATALOGO DINAMICO DE ARTICULOS CON JAVA Y POSTGRESS

Este ejemplo muestra de modo dinámico los datos que están registrados previamente en una base de datos postgres
llamada tienda específicamente en la tabla artículos que consta de 3 campos: codigo text, descripcion text y precio int.
La estructura de las páginas es la siguiente:

articulo.java
(clase)

index.jsp articulos.java
(servlet) tienda

El ejemplo debe ejecutarse en un entorno de red bajo el modelo cliente servidor, por lo que se debe incorporar al
proyecto como referencia el archivo de conectividad java para bases de datos postgres: postgresql-9.0-801.jdbc4.jar
(copiarlo en la carpeta WebContent\WEB-INF\lib). En el analizador de consultas editor SQL podemos aplicar las
siguientes sentencias:

create database tienda;


create table articulos(codigo text primary key,descripcion text,precio int);
insert into articulos values('1','PLANCHA', 80);
insert into articulos values('2','COCINA', 650);
insert into articulos values('3','REFRIGERADORA',1200);

Ahora dentro de Eclipse creamos el proyecto como Página Web Dinámica denominado Ejemplo02. Luego dentro del
mismo proyecto crearemos el paquete Modelo. Así mismo debemos estar seguros que la carpeta WebContent\WEB-
INF debe contener las imágenes de los artículos en la carpeta img debiendo quedar: WebContent\WEB-INF \img (las
imágenes serán entregada por el docente – 1.jpg, 2.jpg y 3.jpg). Creamos ahora la clase Articulo.java dentro del paquete
Modelo

articulo.java
package Modelo;
public class articulo {
private String codigo,descripcion;
private double precio;
public articulo() {
}
public String getCodigo() {
return codigo;
}
public void setCodigo(String codigo) {
this.codigo = codigo;
}
public String getDescripcion() {
return descripcion;
}
public void setDescripcion(String descripcion) {
this.descripcion = descripcion;
}
public double getPrecio() {
return precio;
}
public void setPrecio(double precio) {
this.precio = precio;
}
}
Dentro del proyecto agregar en el paquete Modelo el servlet articulos.java.

articulos.java
package Modelo;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/articulos")
public class articulos extends HttpServlet {
private static final long serialVersionUID = 1L;
public articulos() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
}

public static ArrayList<articulo> listaArticulos() {


ArrayList<articulo> lista = new ArrayList<articulo>();
PreparedStatement res=null;
ResultSet row=null;
try{
try{
Class.forName("org.postgresql.Driver");
}
catch(ClassNotFoundException c)
{
System.out.println("<h1>No se encuentra el Driver: " + c.getMessage() + "</h1>" );
}
Connection con=(Connection)
DriverManager.getConnection("jdbc:postgresql://127.0.0.1:5432/tienda","postgres","123456");
res=con.prepareStatement("select * from articulos");
row=res.executeQuery();
while(row.next())
{
articulo a = new articulo();
a.setCodigo(row.getString("codigo"));
a.setDescripcion(row.getString("descripcion"));
a.setPrecio(row.getInt("precio"));
lista.add(a);
}
res.close();
row.close();
con.close();
}
catch(SQLException e){
System.out.println(e.getMessage());
}
return lista;
}
}
Finalmente la página principal

index.jsp
<%@page import="java.util.ArrayList"%>
<%@page import="Modelo.*" %>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-
1"%>
<html><head><title></title></head><body>
<table align="center" border="0">
<%
ArrayList<articulo> lista = articulos.listaArticulos();
for (articulo a : lista) {%>

<tr><td><img src="img\<% out.println(a.getCodigo()); %>.jpg" width="100"></td><td>


<% out.println(a.getDescripcion()); %>
<br>Precio <b><% out.println(a.getPrecio()); %></b><br>
<a href="agregar.jsp">Agregar</a>
</td></tr>

<%}%>
</table></body></html>

El resultado del modelo se puede ver de la siguiente manera:

Vous aimerez peut-être aussi