Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Base de Datos / PostgreSQL / Ejecutar función de postgreSQL desde Java

Ejecutar función de postgreSQL desde Java

Autor jc mouse lunes, julio 16, 2012

Este es una continuación de un tutorial pasado [Funciones en PostgreSQL y pgAdmin], así que si quieres entenderlo mucho mejor, te recomiendo te des una vuela por [Funciones en PostgreSQL y pgAdmin].

Resumiendo, se creo un función en pgAdminIII el cual consistía en registrar una persona según su edad en una categoría en particular.

Vimos como ejecutar la función desde el propio postgreSQL/pgAdminIII, ahora veremos como ejecutarlo desde java, el que conozca sobre procedimientos almacenados en MySQL sabrá que para ejecutar un PROCEDURE, se hace uso de CallableStatement, eso es totalmente válido, sin embargo, como nuestra función solo retorna un resultado, nosotros utilizaremos otra forma :), utilizaremos la instrucción executeQuery();

Englobaremos todo en una sola clase la cual se llama, pgFunctions, el código es:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
 * @web https://www.jc-mouse.net
 * @author Mouse
 */
public class pgFunctions {

  /* DATOS PARA LA CONEXION */
  /** Nombre de la base de datos */
  private String db = "dbTemp";
  /** Usuario postgreSQL */
  private String user = "postgres";
  /** Contraseña postgreSQL */
  private String password = "";
  /** Cadena de conexión */
  private String url = "jdbc:postgresql://localhost:5432/"+db;
  /** Conexion a base de datos */
  private Connection conn = null;
  /** Para obtener los resultados de las consultas SQL de la base de datos */
  private ResultSet resultSet = null;
  /** Para enviar comandos SQL a la base de datos */
  private Statement statement = null;

  /** Constructor de la clase
 * Realiza una conexión a la base de datos de PostgreSQL
 * @exception SQLException Los datos son incorrectos
 * @exception ClassNotFoundException No existe libreria JDBC:Postgresql
 */
  public pgFunctions(){
   this.url = "jdbc:postgresql://localhost:5432/"+db;
       try{
         //obtenemos el driver de para mysql
         Class.forName("org.postgresql.Driver");
         //obtenemos la conexión
         conn = DriverManager.getConnection(this.url, this.user , this.password );
      }catch(SQLException e){
         System.err.println( e.getMessage() );
      }catch(ClassNotFoundException e){
         System.err.println( e.getMessage() );
      }
  }

/**
 * Ejecuta la instruccion SQL para llamar a la función en postgreSQL
 * @param Cedula_Identidad String que es el identificador de la persona
 * @return String el resultado de la función
 */
public String CallFunction( String Cedula_Identidad )
{
    String res="";
    try {
      statement = conn.createStatement();
      resultSet = statement.executeQuery("SELECT registrar('"+Cedula_Identidad+"'); ");
      while (resultSet.next())
      {
        res=resultSet.getString(1);
      }
     }
   catch (SQLException ex) {
        System.err.println( ex.getMessage() );
   }
   return res;
}

}

Explicación: En el constructor de clase, se realiza la conexión a PostreSQL y se almacena en la variable «conn«, el método «CallFunction» nos sirve para ejecutar la función y devolver el resultado en un String.

Por demás esta decir que para ejecutarlo en tu pc, debes cambiar los datos de conexión, base de datos, usuario y contraseña, por los tuyos.

Ejecutamos esta clase de la siguiente manera:

  pgFunctions pgf = new pgFunctions();        
  System.out.println( pgf.CallFunction("1234567") );

Obteniendo como resultado:

resultado funcion

«A la grande le puse cuca» 🙂

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Buscar dispositivos con Java Media Framework

Buscar dispositivos con Java Media Framework

Java Media Framwork ademas de permitir reproducir archivos multimedia, tambien permite trabajar con dispositivos de capt...

Añadir Splash Screen en Java/Netbeans

Añadir Splash Screen en Java/Netbeans

¿Splash Screen? El splash screen o traducido al aspañol 😉  es una «Pantalla de bienvenida» que se muestra cuando se ejec...

Generación de laberintos: Algoritmo de Aldous-Broder

Generación de laberintos: Algoritmo de Aldous-Broder

El Algoritmo de Aldous-Broder llamado así por dos matemáticos, David Aldous and A. Broder (quienes trabajaban en la inve...

Lector Feed con Java/Rome

Lector Feed con Java/Rome

En este tutorial crearemos un lector de Feeds en Java/netbeans, pero antes debemosa saber que es un Feed, según Santa Wi...

Introducción a Python en Java

Introducción a Python en Java

Python es un lenguaje de programación interpretado,  de programación multiparadigma, ya que soporta orientación a objeto...

Terminator: Terminal multiventanas para Linux

Terminator: Terminal multiventanas para Linux

Cada versión de Linux viene con su propia terminal predeterminada para interactuar con el Sistema Operativo a través de...

2 comentarios en “Ejecutar función de postgreSQL desde Java”

  1. anonimmo dice:

    que buena su pagina quiesiera y me ayudara en un problema que quisiera resolver como hacerle filtro a un jtexfield en java, es decir que al darle clic en el texfield le despliegue como hotmail…. que al uno darle clic le aparece los usuarios que han ingresado…. porfa un tutorial de como realizarlo…

    1. Mouse dice:

      tomo nota para próximo post 🙂

Los comentarios estan cerrados

Comparte lo que sabes

Categorias

Últimas entradas

En muchas ocasiones es necesaria la personalización de componentes java para que estos se adecuen a nuestros requerimien...

En este post mostramos como personalizar el Header (encabezado) de un componente JTable en Java colocando iconos, centra...

El JTable de Java es un gran componente para mostrar datos en una tabla de una forma rápida y sencilla, sin embargo en v...

En este post veremos un ejemplo sencillo de como descargar desde Internet archivos de cualquier tipo (*.jpg, *.png, *.gi...

Herramientas

Generador de Enlaces a Whatsapp