Vous êtes sur la page 1sur 3

Elaborar una aplicacin web para registrar venta de combustibles en un grifo.

La aplicacin
solicita tipo de combustible,(gasolina84,gasolina 90,petrleo),cantidad y placa

EJEMPLO REGISTRO DE DATOS EN POSTGRES CON JAVA

Este ejemplo realiza el registro de datos que se solicita en un formulario en una base de datos
postgres llamada sencico especficamente en la tabla alumnos que consta de 2 campos: codigo
char(6) y nombres char(60). El esquema es el siguiente:

registro.html graba.java alumnos.java


(servlet) sencico

(servlet). Un servlet es una clase que se ejecuta en el contexto de un servidor web (Apache
Tomcat). Un servlet se ejecuta y el resultado de ejecucin viaja por internet para ser visualizado
en un navegador web.

El ejemplo debe ejecutarse en un entorno de red bajo el modelo cliente servidor, por lo que el
servidor de base de datos postgres debe residir nicamente en un equipo remoto para todos los
alumnos. Para lo cual cada alumno o cliente 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 del proyecto WebContent\WEB-INF\lib)
Para crear la base de datos en el Servidor nos conectamos mediante el administrador grafico
Pgadmin III y seleccionamos la base de datos postgres luego con el juego de teclas Ctrl+E
activamos el analizador de consultas editor SQL podemos aplicar la siguiente sentencia en

CREATE DATABASE sencico;

Una vez creada la base de datos en el servidor seleccionamos la base de datos creada

y ejecutamos la siguiente consulta

DROP TABLE IF EXISTS ALUMNOS;


CREATE TABLE ALUMNOS (CODIGO CHAR (6) NOT NULL, NOMBRES VARCHAR (60), PRIMARY
KEY(CODIGO));

Ahora escribimos la pgina html

registro.html

<html><head><title>Registro de Datos</title></head><body>
Registro de Datos<br>
<form action="graba" method="get">
Codigo:<input type="text" name="txtcodigo"><br>
Nombres:<input type="text" name="txtnombres"><br>
<input type="submit" value="Grabar">
</form></body></html>
Dentro del proyecto agregar un nuevo tipo de archivo Java con el nombre de la clase
Alumnos.java en el paquete Sencico.

Alumnos.java
package sencico;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql. Statement;

public class alumnos {


public void agregar(String cod,String nom)
{
String driver = "org.postgresql.Driver";
try{
try{
Class.forName(driver);
}
catch(ClassNotFoundException c)
{
System.out.println("<h1>No se encuentra el Driver: " + c.getMessage() + "</h1>" );
}
String ruta = "jdbc:postgresql://127.0.0.1:5432/sencico";
String user = "postgres";
String password = "123456";
Connection con=(Connection) DriverManager.getConnection(ruta,user,password);
Statement sql=(Statement) con.createStatement();
sql.executeUpdate("insert into alumnos(codigo,nombres) values('"+cod+"','"+nom+"')");
}
catch(SQLException e){
System.out.println(e.getMessage());
}}
}

Y en el paquete predeterminado el servlet graba.java

graba.java
import java.io.IOException;
import java.io.PrintWriter;
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("/graba")
public class graba extends HttpServlet {
private static final long serialVersionUID = 1L;

public graba() {
super();
// TODO Auto-generated constructor stub
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException
{
PrintWriter x=response.getWriter();
sencico.alumnos a=new sencico.alumnos();
a.agregar(request.getParameter("txtcodigo"), request.getParameter("txtnombres"));
x.print(request.getParameter("txtcodigo")+" "+request.getParameter("txtcodigo"));
x.print("Agregado");
}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {
// TODO Auto-generated method stub
}
}