SlideShare una empresa de Scribd logo
1 de 3
Descargar para leer sin conexión
1
GUIA PARA CREAR UNA CONEXIÓN
CON UNA BASE DE DATOS POSTGRES
UTILIZANDO JDBC.
ELABORADA POR: BRAVO CONTRERAS MARICELA CLAUDIA
PROFESOR: DR. VICTOR SOSA SOSA
Este documento describe los pasos necesarios
1. Identificar la fuente de datos (base de datos) a la que se desea conectar. Esta puede
ser Oracle, Sybase, Postgres, etc.
2. Obtener el driver JDBC para el manejador de la base de datos correspondiente, en
este ejemplo la conexión se hace con postgres. Para obtener el driver de postgres se
puede bajar de:
http://jdbc.postgresql.org
3. Modificar la variable de ambiente CLASSPATH, asignándole la ruta donde se
encuentra guardado el driver.
Por ejemplo: si el driver de JDBC se encuentra en el directorio /usr/local/lib y el
Java JDK está instalado en el directorio /usr/local/jdk1.3.1. Para correr la aplicación
se utilizaría:
CLASSPATH = usr/local/jdk1.3.1/:usr/local/lib/postgresql.jar
4. Importar el JDBC. Cualquier programa que utilice JDBC necesita importar el
paquete java.sql.
Esto se hace incluyendo la siguiente línea al principio del programa:
Import java.sql.*;
5. Cargar el driver apropiado dentro del código. Una forma de hacerlo es utilizando el
método Class.forName() para cargar la clase explícitamente.
En el caso de PostgreSQL, se utiliza de la siguiente manera:
Class.forName(“postgresql.Driver”);
Para saber que drivers están disponibles se puede utilizar el método getDrivers();
del DriverManager.
6. Una vez que se ha cargado el driver, se llama a DriverManager.getConnection()
para establecer una conexión con la fuente de datos. El método getConnection()
devuelve un objeto tipo Connection que representa una conexión física al URL
especificado. La definición del método getConnection es la siguiente:
public static Connection getConnection(String url, String user, String password)
throws SQLException
Donde el url (Uniform Resource Locator) que representa la base de datos, tiene el
siguiente formato:
jdbc:subprotocol://host:port/datasourcename
2
Estructura del protocolo JDBC
Componente Descripción
jdbc Especifica que se está utilizando un protocolo JDBC
subprotocol Indica el tipo de la fuente de datos. En este caso se utiliza
postgresql. Cuando el DriverManager busca un driver registrado
para conectarse a la fuente de datos, pasa este URL, entonces el
driver puede determinar si puede manejar esta fuente de datos.
host Indica el nombre del servidor donde se encuentra el manejador de
la base de datos. Cuando se omite, se toma como predeterminado
a localhost.
port Especifica el número del puerto donde el servidor está atendiendo.
El puerto estándar predeterminado de PostgreSQL es el número
5432.
datasourcename Es el nombre que el manejador de la base de datos utiliza para
identificar la base de datos.
Parámetros
opcionales
Se puede utilizar para pasar información extra que es específica
del driver.
7. Utilizar la conexión devuelta por el DataManager para acceder la fuente de datos.
Un objeto tipo Connection representa una sesión con la fuente de datos, dentro de
esta sesión se pueden ejecutar cualquier cantidad de instrucciones SQL.
8. Cerrar la conexión
Para cerrar la conexión se llama al método close() del objeto tipo Connection.
¿Cómo obtener datos de la base de datos una vez que ya existe una conexión?
La conexión con la base de datos se utiliza para enviar comandos e instrucciones
SQL a la base de datos. La conexión actúa como una liga directa al driver de la base de
datos. El programa cliente solicita un objeto SQL tipo statement a la conexión y deposita en
él la instrucción a ejecutar. La conexión envía esta información al driver. El driver envía el
objeto SQL a la base de datos y devuelve los resultados. Los resultados regresan al cliente
en la forma de un result set.
El objeto conexión tiene tres métodos que devuelven objetos que representan una
llamada a la base de datos. Estos métodos son:
createStatement(). Devuelve un objeto que implementa la interface statement. Se utiliza
para ejecutar llamadas SQL únicas en la base de datos.
prepareStatement(). Devuelve un objeto tipo preparedStatement que hereda de la interface
statement. Maneja parámetros de entrada. Este tipo de statement puede ser más eficiente si
se planea ejecutar una misma llamada SQL múltiples veces, porque puede ser
precompilada.
prepareCall(). Devuelve un objeto tipo callableSatetment que hereda del
preparedStatement para manejar parámetros de salida. Se utiliza para ejecutar
procedimientos almacenados que tienen parámetros de entrada y valores resultantes de
salida.
3
Un objeto tipo statement tiene tres métodos para enviar SQL a la base de datos y
ejecutar las llamadas a la base de datos:
executeQuery(). Se utiliza generalmente para instrucciones tipo SELECT simples.
executeUpdate(). Actualiza valores de la base de datos. Generalmente es utilizado para las
instrucciones INSERT, UPDATE, DELETE, o comandos tipo DDL como CREATE. Este
método devuelve el número de renglones afectados por el comando.
execute(). Se utiliza para hacer llamadas a procedimientos almacenados que devuelven
múltiples resultados.
Los resultados de una consulta se devuelven en un ResultSet, el cual almacena los
resultados en renglones y mantiene un apuntador al renglón actual. Cada valor dentro de un
renglón puede accesarse por su nombre o por su posición.
Ejemplo de un programa cliente que establece una conexión con una base de datos
import java.sql.*;
public class EjemploJDBC
{
public static void main(String args[])
{
try
{
Class.forName(“postgresql.Driver”);
String url = “jdbc:postgresql://148.208.221.22:5432/deptocomputacion”;
Connection con = DriverManager.getConnection(url, “mari_clau”, “1234”);
Statement stmt = con.createStatement();
// Se ejecuta una consulta y se devuelve el resultado en ResultSet
ResultSet rs = stmt.executeQuery(“select * from estudiantes”);
/* Se realizan iteraciones a través del ResultSet y se imprimen en pantalla los valores de
algunos atributos del renglón. El ResultSet mantiene un apuntador al renglón de datos
actual, inicialmente el apuntador es posicionado antes del primer renglón. El método next
mueve el apuntador al siguiente renglón. */
while (rs.next())
{
System.out.println(rs.getString(“nombre”) + “ “ + rs.getString(“direccion”));
}
}
catch(Exception e)
{
e.printStackTrace();
}
}// fin del main
}// fin de la clase EjemploJDBC

Más contenido relacionado

La actualidad más candente

Conexión desde una aplicación en java a un bd en mysql
Conexión desde una aplicación en java a un bd en mysqlConexión desde una aplicación en java a un bd en mysql
Conexión desde una aplicación en java a un bd en mysqlROQUE Caldas Dominguez
 
Find File Servlet DB
Find File Servlet DBFind File Servlet DB
Find File Servlet DBjubacalo
 
Acceso a BBDD mediante un servlet
Acceso a BBDD mediante un servletAcceso a BBDD mediante un servlet
Acceso a BBDD mediante un servletjubacalo
 
Servlet Hola Mundo con Eclipse y Tomcat
Servlet Hola Mundo con Eclipse y TomcatServlet Hola Mundo con Eclipse y Tomcat
Servlet Hola Mundo con Eclipse y Tomcatjubacalo
 
Servlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLServlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLjubacalo
 
Jsp directiva page
Jsp directiva pageJsp directiva page
Jsp directiva pagejubacalo
 
Acciones JSP
Acciones JSPAcciones JSP
Acciones JSPjubacalo
 
Explicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundoExplicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundojubacalo
 
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANSTutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANSWilliam Diaz S
 
02 formulario iniciar sesion programar
02 formulario iniciar sesion   programar02 formulario iniciar sesion   programar
02 formulario iniciar sesion programarpompeya
 
Manual Netbeans Bases Datos2
Manual Netbeans Bases Datos2Manual Netbeans Bases Datos2
Manual Netbeans Bases Datos2mtemarialuisa
 
Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Ronald Cuello
 
Introducción a Java Persistence API
Introducción a Java Persistence APIIntroducción a Java Persistence API
Introducción a Java Persistence APIJose Martinez
 

La actualidad más candente (20)

Conexión desde una aplicación en java a un bd en mysql
Conexión desde una aplicación en java a un bd en mysqlConexión desde una aplicación en java a un bd en mysql
Conexión desde una aplicación en java a un bd en mysql
 
Find File Servlet DB
Find File Servlet DBFind File Servlet DB
Find File Servlet DB
 
Presentación1
Presentación1Presentación1
Presentación1
 
Acceso a BBDD mediante un servlet
Acceso a BBDD mediante un servletAcceso a BBDD mediante un servlet
Acceso a BBDD mediante un servlet
 
Servlet Hola Mundo con Eclipse y Tomcat
Servlet Hola Mundo con Eclipse y TomcatServlet Hola Mundo con Eclipse y Tomcat
Servlet Hola Mundo con Eclipse y Tomcat
 
Servlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLServlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTML
 
Jsp directiva page
Jsp directiva pageJsp directiva page
Jsp directiva page
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Acciones JSP
Acciones JSPAcciones JSP
Acciones JSP
 
Explicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundoExplicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundo
 
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANSTutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
 
02 formulario iniciar sesion programar
02 formulario iniciar sesion   programar02 formulario iniciar sesion   programar
02 formulario iniciar sesion programar
 
Manual Netbeans Bases Datos2
Manual Netbeans Bases Datos2Manual Netbeans Bases Datos2
Manual Netbeans Bases Datos2
 
Conexion del jpa con mysql
Conexion del jpa con mysqlConexion del jpa con mysql
Conexion del jpa con mysql
 
JPA en Netbeans
JPA en NetbeansJPA en Netbeans
JPA en Netbeans
 
Statement
StatementStatement
Statement
 
Guia7 java
Guia7 javaGuia7 java
Guia7 java
 
Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)
 
Introducción a Java Persistence API
Introducción a Java Persistence APIIntroducción a Java Persistence API
Introducción a Java Persistence API
 
Java con base de datos
Java con base  de datosJava con base  de datos
Java con base de datos
 

Destacado

Ruegos pleno 12 marzo 2013
Ruegos pleno 12 marzo 2013Ruegos pleno 12 marzo 2013
Ruegos pleno 12 marzo 2013UPyD Parla
 
Mocion upyd sobre transparencia real
Mocion upyd sobre transparencia realMocion upyd sobre transparencia real
Mocion upyd sobre transparencia realUPyD Parla
 
8 herramientas para mejorar tu experiencia en Dropbox
8 herramientas para mejorar tu experiencia en Dropbox8 herramientas para mejorar tu experiencia en Dropbox
8 herramientas para mejorar tu experiencia en DropboxKaren Quintero Castañeda
 
Las flores (1)
Las flores (1)Las flores (1)
Las flores (1)yudibel
 
El disenocurricularcomofact28535 27530
El disenocurricularcomofact28535 27530El disenocurricularcomofact28535 27530
El disenocurricularcomofact28535 27530Juan CALLER LUNA
 
Estatutos CEPAM 2011
Estatutos CEPAM 2011Estatutos CEPAM 2011
Estatutos CEPAM 2011djgorila
 
Panorama web 2
Panorama web 2Panorama web 2
Panorama web 2alex_rivas
 
Pleno (15) 12 noviembre-2013 3ª parte
Pleno (15) 12 noviembre-2013 3ª partePleno (15) 12 noviembre-2013 3ª parte
Pleno (15) 12 noviembre-2013 3ª parteUPyD Parla
 
Gobierno abierto: Transparencia, Participación y Datos Abiertos
Gobierno abierto: Transparencia, Participación y Datos AbiertosGobierno abierto: Transparencia, Participación y Datos Abiertos
Gobierno abierto: Transparencia, Participación y Datos AbiertosDavid Bueno Vallejo
 
Plan de trab sem 4 leng y mate clase 1
Plan de trab  sem 4 leng y mate clase 1Plan de trab  sem 4 leng y mate clase 1
Plan de trab sem 4 leng y mate clase 1yenny vidal carrasco
 
Alternativas en español para trabajar como freelancer
Alternativas en español para trabajar como freelancerAlternativas en español para trabajar como freelancer
Alternativas en español para trabajar como freelancerKaren Quintero Castañeda
 
Condiciones de la comunicación santiago moreno
Condiciones de la comunicación santiago morenoCondiciones de la comunicación santiago moreno
Condiciones de la comunicación santiago morenomoreno94
 

Destacado (20)

Ruegos pleno 12 marzo 2013
Ruegos pleno 12 marzo 2013Ruegos pleno 12 marzo 2013
Ruegos pleno 12 marzo 2013
 
Coral virus
Coral virusCoral virus
Coral virus
 
Mocion upyd sobre transparencia real
Mocion upyd sobre transparencia realMocion upyd sobre transparencia real
Mocion upyd sobre transparencia real
 
Trabajo en equipo carolina
Trabajo en equipo carolinaTrabajo en equipo carolina
Trabajo en equipo carolina
 
8 herramientas para mejorar tu experiencia en Dropbox
8 herramientas para mejorar tu experiencia en Dropbox8 herramientas para mejorar tu experiencia en Dropbox
8 herramientas para mejorar tu experiencia en Dropbox
 
Las flores (1)
Las flores (1)Las flores (1)
Las flores (1)
 
El disenocurricularcomofact28535 27530
El disenocurricularcomofact28535 27530El disenocurricularcomofact28535 27530
El disenocurricularcomofact28535 27530
 
Estatutos CEPAM 2011
Estatutos CEPAM 2011Estatutos CEPAM 2011
Estatutos CEPAM 2011
 
Panorama web 2
Panorama web 2Panorama web 2
Panorama web 2
 
Uso de Arma Corta: Lección 5
Uso de Arma Corta: Lección 5Uso de Arma Corta: Lección 5
Uso de Arma Corta: Lección 5
 
Invitaciones chaparro correa
Invitaciones chaparro correaInvitaciones chaparro correa
Invitaciones chaparro correa
 
Acerca del suicidio
Acerca del suicidioAcerca del suicidio
Acerca del suicidio
 
Pleno (15) 12 noviembre-2013 3ª parte
Pleno (15) 12 noviembre-2013 3ª partePleno (15) 12 noviembre-2013 3ª parte
Pleno (15) 12 noviembre-2013 3ª parte
 
Gobierno abierto: Transparencia, Participación y Datos Abiertos
Gobierno abierto: Transparencia, Participación y Datos AbiertosGobierno abierto: Transparencia, Participación y Datos Abiertos
Gobierno abierto: Transparencia, Participación y Datos Abiertos
 
Proverbios aìrabes
Proverbios aìrabesProverbios aìrabes
Proverbios aìrabes
 
Fan social media
Fan social mediaFan social media
Fan social media
 
Plan de trab sem 4 leng y mate clase 1
Plan de trab  sem 4 leng y mate clase 1Plan de trab  sem 4 leng y mate clase 1
Plan de trab sem 4 leng y mate clase 1
 
Cuenta en tw
Cuenta en twCuenta en tw
Cuenta en tw
 
Alternativas en español para trabajar como freelancer
Alternativas en español para trabajar como freelancerAlternativas en español para trabajar como freelancer
Alternativas en español para trabajar como freelancer
 
Condiciones de la comunicación santiago moreno
Condiciones de la comunicación santiago morenoCondiciones de la comunicación santiago moreno
Condiciones de la comunicación santiago moreno
 

Similar a Conectar Postgres JDBC

Similar a Conectar Postgres JDBC (20)

Java y Bases de Datos
Java y Bases de DatosJava y Bases de Datos
Java y Bases de Datos
 
Java y Bases Datos
Java y Bases DatosJava y Bases Datos
Java y Bases Datos
 
Bases Datos en java
Bases Datos en javaBases Datos en java
Bases Datos en java
 
Bases de Datos en en www.fiec.espol.edu.ec
Bases de Datos en  en www.fiec.espol.edu.ecBases de Datos en  en www.fiec.espol.edu.ec
Bases de Datos en en www.fiec.espol.edu.ec
 
Unidad 9. acceso a base de datos desde java
Unidad 9. acceso a base de datos desde javaUnidad 9. acceso a base de datos desde java
Unidad 9. acceso a base de datos desde java
 
3. Curso Java JDBC (Bases de datos) - Curso 2005-2006
3. Curso Java JDBC (Bases de datos) - Curso 2005-20063. Curso Java JDBC (Bases de datos) - Curso 2005-2006
3. Curso Java JDBC (Bases de datos) - Curso 2005-2006
 
Coneccion
ConeccionConeccion
Coneccion
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Connection
ConnectionConnection
Connection
 
S8-POO-4.2 BDD
S8-POO-4.2 BDDS8-POO-4.2 BDD
S8-POO-4.2 BDD
 
Java con Base de Datos
Java con Base de Datos Java con Base de Datos
Java con Base de Datos
 
[ES] Conectividad de java a base de datos(jdbc)
[ES] Conectividad de java a base  de datos(jdbc)[ES] Conectividad de java a base  de datos(jdbc)
[ES] Conectividad de java a base de datos(jdbc)
 
JDBC
JDBCJDBC
JDBC
 
Jdbc
JdbcJdbc
Jdbc
 
Clase conexion java - Analisis de Sistemas
Clase conexion java - Analisis de SistemasClase conexion java - Analisis de Sistemas
Clase conexion java - Analisis de Sistemas
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Tema 9 aplicaciones de dos capas por gio
Tema 9   aplicaciones de dos capas por gioTema 9   aplicaciones de dos capas por gio
Tema 9 aplicaciones de dos capas por gio
 
Jdbc
JdbcJdbc
Jdbc
 
Acceso a datos con JAVA
Acceso a datos con JAVAAcceso a datos con JAVA
Acceso a datos con JAVA
 
Tema 15 aplicaciones de dos capas por gio
Tema 15   aplicaciones de dos capas por gioTema 15   aplicaciones de dos capas por gio
Tema 15 aplicaciones de dos capas por gio
 

Más de jbersosa

Las excepciones standar
Las excepciones standarLas excepciones standar
Las excepciones standarjbersosa
 
Mas sobre excepciones
Mas sobre excepcionesMas sobre excepciones
Mas sobre excepcionesjbersosa
 
Estructuras de control try catch
Estructuras de control try catchEstructuras de control try catch
Estructuras de control try catchjbersosa
 
Clasen1java
Clasen1javaClasen1java
Clasen1javajbersosa
 
Programación java1
Programación java1Programación java1
Programación java1jbersosa
 
Tercercortesistop
TercercortesistopTercercortesistop
Tercercortesistopjbersosa
 
Encapsulacion
EncapsulacionEncapsulacion
Encapsulacionjbersosa
 
Administracion de la memoria principal
Administracion de  la memoria principalAdministracion de  la memoria principal
Administracion de la memoria principaljbersosa
 
Auditoria 2
Auditoria 2Auditoria 2
Auditoria 2jbersosa
 
Auditoriasistemasi 150703002656-lva1-app6891
Auditoriasistemasi 150703002656-lva1-app6891Auditoriasistemasi 150703002656-lva1-app6891
Auditoriasistemasi 150703002656-lva1-app6891jbersosa
 
Auditoria informatica
Auditoria informaticaAuditoria informatica
Auditoria informaticajbersosa
 
Auditoria de sistemas (1)
Auditoria de sistemas (1)Auditoria de sistemas (1)
Auditoria de sistemas (1)jbersosa
 
Auditoría de sistemas de información presentación
Auditoría de sistemas de información presentaciónAuditoría de sistemas de información presentación
Auditoría de sistemas de información presentaciónjbersosa
 
Realizar investigación y hacer un análisis por cada tema asignado al particip...
Realizar investigación y hacer un análisis por cada tema asignado al particip...Realizar investigación y hacer un análisis por cada tema asignado al particip...
Realizar investigación y hacer un análisis por cada tema asignado al particip...jbersosa
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosjbersosa
 
Estructura de una red
Estructura de una redEstructura de una red
Estructura de una redjbersosa
 
Proyectodeprogramacinidesegundocorte2015 2
Proyectodeprogramacinidesegundocorte2015 2Proyectodeprogramacinidesegundocorte2015 2
Proyectodeprogramacinidesegundocorte2015 2jbersosa
 
Simular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentariaSimular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentariajbersosa
 

Más de jbersosa (20)

Las excepciones standar
Las excepciones standarLas excepciones standar
Las excepciones standar
 
Mas sobre excepciones
Mas sobre excepcionesMas sobre excepciones
Mas sobre excepciones
 
Estructuras de control try catch
Estructuras de control try catchEstructuras de control try catch
Estructuras de control try catch
 
Main
MainMain
Main
 
Clasen1java
Clasen1javaClasen1java
Clasen1java
 
Programación java1
Programación java1Programación java1
Programación java1
 
Tercercortesistop
TercercortesistopTercercortesistop
Tercercortesistop
 
Encapsulacion
EncapsulacionEncapsulacion
Encapsulacion
 
Administracion de la memoria principal
Administracion de  la memoria principalAdministracion de  la memoria principal
Administracion de la memoria principal
 
Auditoria 2
Auditoria 2Auditoria 2
Auditoria 2
 
Auditoriasistemasi 150703002656-lva1-app6891
Auditoriasistemasi 150703002656-lva1-app6891Auditoriasistemasi 150703002656-lva1-app6891
Auditoriasistemasi 150703002656-lva1-app6891
 
Auditoria informatica
Auditoria informaticaAuditoria informatica
Auditoria informatica
 
Auditoria de sistemas (1)
Auditoria de sistemas (1)Auditoria de sistemas (1)
Auditoria de sistemas (1)
 
Auditoría de sistemas de información presentación
Auditoría de sistemas de información presentaciónAuditoría de sistemas de información presentación
Auditoría de sistemas de información presentación
 
Realizar investigación y hacer un análisis por cada tema asignado al particip...
Realizar investigación y hacer un análisis por cada tema asignado al particip...Realizar investigación y hacer un análisis por cada tema asignado al particip...
Realizar investigación y hacer un análisis por cada tema asignado al particip...
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Php
PhpPhp
Php
 
Estructura de una red
Estructura de una redEstructura de una red
Estructura de una red
 
Proyectodeprogramacinidesegundocorte2015 2
Proyectodeprogramacinidesegundocorte2015 2Proyectodeprogramacinidesegundocorte2015 2
Proyectodeprogramacinidesegundocorte2015 2
 
Simular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentariaSimular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentaria
 

Último

TEMA 6 LA II REPÚBLICA (1931-1936)_.pdf
TEMA 6         LA II REPÚBLICA (1931-1936)_.pdfTEMA 6         LA II REPÚBLICA (1931-1936)_.pdf
TEMA 6 LA II REPÚBLICA (1931-1936)_.pdfanagc806
 
dermatitis de contacto dermatologia irritativa
dermatitis de contacto dermatologia irritativadermatitis de contacto dermatologia irritativa
dermatitis de contacto dermatologia irritativaDamiiHernandez
 
Clase de Aines - Terapeutica médica eToxicologia
Clase de Aines - Terapeutica médica eToxicologiaClase de Aines - Terapeutica médica eToxicologia
Clase de Aines - Terapeutica médica eToxicologiaRaphaelCruz46
 
IVU-PIELO-SEPSIS listo.pptxLos problemas de salud más comunes en los bebés in...
IVU-PIELO-SEPSIS listo.pptxLos problemas de salud más comunes en los bebés in...IVU-PIELO-SEPSIS listo.pptxLos problemas de salud más comunes en los bebés in...
IVU-PIELO-SEPSIS listo.pptxLos problemas de salud más comunes en los bebés in...MarcoFlores940553
 
Indicaciones y contraindicaciones de la sonda vesical y sonda nasogastrica.pptx
Indicaciones y contraindicaciones de la sonda vesical y sonda nasogastrica.pptxIndicaciones y contraindicaciones de la sonda vesical y sonda nasogastrica.pptx
Indicaciones y contraindicaciones de la sonda vesical y sonda nasogastrica.pptx Estefa RM9
 
SISTEMA DE CLORACIÓN - PARA SISTEMA DE AGUA POTABLE VIVIENDA.pptx
SISTEMA DE CLORACIÓN - PARA SISTEMA DE AGUA POTABLE VIVIENDA.pptxSISTEMA DE CLORACIÓN - PARA SISTEMA DE AGUA POTABLE VIVIENDA.pptx
SISTEMA DE CLORACIÓN - PARA SISTEMA DE AGUA POTABLE VIVIENDA.pptxGenaroElmerSifuentes6
 
PROYECTO 3 4 5 AÑOS del nivel inicial
PROYECTO    3 4 5 AÑOS del nivel inicialPROYECTO    3 4 5 AÑOS del nivel inicial
PROYECTO 3 4 5 AÑOS del nivel inicialArtemisaReateguiCaro
 
CAPACITACIÓN VIGIA EN SEGURIDAD Y SALUD EN EL TRABAJO.ppt
CAPACITACIÓN VIGIA EN SEGURIDAD Y SALUD EN EL TRABAJO.pptCAPACITACIÓN VIGIA EN SEGURIDAD Y SALUD EN EL TRABAJO.ppt
CAPACITACIÓN VIGIA EN SEGURIDAD Y SALUD EN EL TRABAJO.pptSandraCardenas92
 
Sesión - Vacunación del Adulto (Revisión tema).pdf
Sesión - Vacunación del Adulto (Revisión tema).pdfSesión - Vacunación del Adulto (Revisión tema).pdf
Sesión - Vacunación del Adulto (Revisión tema).pdfLas Sesiones de San Blas
 

Último (9)

TEMA 6 LA II REPÚBLICA (1931-1936)_.pdf
TEMA 6         LA II REPÚBLICA (1931-1936)_.pdfTEMA 6         LA II REPÚBLICA (1931-1936)_.pdf
TEMA 6 LA II REPÚBLICA (1931-1936)_.pdf
 
dermatitis de contacto dermatologia irritativa
dermatitis de contacto dermatologia irritativadermatitis de contacto dermatologia irritativa
dermatitis de contacto dermatologia irritativa
 
Clase de Aines - Terapeutica médica eToxicologia
Clase de Aines - Terapeutica médica eToxicologiaClase de Aines - Terapeutica médica eToxicologia
Clase de Aines - Terapeutica médica eToxicologia
 
IVU-PIELO-SEPSIS listo.pptxLos problemas de salud más comunes en los bebés in...
IVU-PIELO-SEPSIS listo.pptxLos problemas de salud más comunes en los bebés in...IVU-PIELO-SEPSIS listo.pptxLos problemas de salud más comunes en los bebés in...
IVU-PIELO-SEPSIS listo.pptxLos problemas de salud más comunes en los bebés in...
 
Indicaciones y contraindicaciones de la sonda vesical y sonda nasogastrica.pptx
Indicaciones y contraindicaciones de la sonda vesical y sonda nasogastrica.pptxIndicaciones y contraindicaciones de la sonda vesical y sonda nasogastrica.pptx
Indicaciones y contraindicaciones de la sonda vesical y sonda nasogastrica.pptx
 
SISTEMA DE CLORACIÓN - PARA SISTEMA DE AGUA POTABLE VIVIENDA.pptx
SISTEMA DE CLORACIÓN - PARA SISTEMA DE AGUA POTABLE VIVIENDA.pptxSISTEMA DE CLORACIÓN - PARA SISTEMA DE AGUA POTABLE VIVIENDA.pptx
SISTEMA DE CLORACIÓN - PARA SISTEMA DE AGUA POTABLE VIVIENDA.pptx
 
PROYECTO 3 4 5 AÑOS del nivel inicial
PROYECTO    3 4 5 AÑOS del nivel inicialPROYECTO    3 4 5 AÑOS del nivel inicial
PROYECTO 3 4 5 AÑOS del nivel inicial
 
CAPACITACIÓN VIGIA EN SEGURIDAD Y SALUD EN EL TRABAJO.ppt
CAPACITACIÓN VIGIA EN SEGURIDAD Y SALUD EN EL TRABAJO.pptCAPACITACIÓN VIGIA EN SEGURIDAD Y SALUD EN EL TRABAJO.ppt
CAPACITACIÓN VIGIA EN SEGURIDAD Y SALUD EN EL TRABAJO.ppt
 
Sesión - Vacunación del Adulto (Revisión tema).pdf
Sesión - Vacunación del Adulto (Revisión tema).pdfSesión - Vacunación del Adulto (Revisión tema).pdf
Sesión - Vacunación del Adulto (Revisión tema).pdf
 

Conectar Postgres JDBC

  • 1. 1 GUIA PARA CREAR UNA CONEXIÓN CON UNA BASE DE DATOS POSTGRES UTILIZANDO JDBC. ELABORADA POR: BRAVO CONTRERAS MARICELA CLAUDIA PROFESOR: DR. VICTOR SOSA SOSA Este documento describe los pasos necesarios 1. Identificar la fuente de datos (base de datos) a la que se desea conectar. Esta puede ser Oracle, Sybase, Postgres, etc. 2. Obtener el driver JDBC para el manejador de la base de datos correspondiente, en este ejemplo la conexión se hace con postgres. Para obtener el driver de postgres se puede bajar de: http://jdbc.postgresql.org 3. Modificar la variable de ambiente CLASSPATH, asignándole la ruta donde se encuentra guardado el driver. Por ejemplo: si el driver de JDBC se encuentra en el directorio /usr/local/lib y el Java JDK está instalado en el directorio /usr/local/jdk1.3.1. Para correr la aplicación se utilizaría: CLASSPATH = usr/local/jdk1.3.1/:usr/local/lib/postgresql.jar 4. Importar el JDBC. Cualquier programa que utilice JDBC necesita importar el paquete java.sql. Esto se hace incluyendo la siguiente línea al principio del programa: Import java.sql.*; 5. Cargar el driver apropiado dentro del código. Una forma de hacerlo es utilizando el método Class.forName() para cargar la clase explícitamente. En el caso de PostgreSQL, se utiliza de la siguiente manera: Class.forName(“postgresql.Driver”); Para saber que drivers están disponibles se puede utilizar el método getDrivers(); del DriverManager. 6. Una vez que se ha cargado el driver, se llama a DriverManager.getConnection() para establecer una conexión con la fuente de datos. El método getConnection() devuelve un objeto tipo Connection que representa una conexión física al URL especificado. La definición del método getConnection es la siguiente: public static Connection getConnection(String url, String user, String password) throws SQLException Donde el url (Uniform Resource Locator) que representa la base de datos, tiene el siguiente formato: jdbc:subprotocol://host:port/datasourcename
  • 2. 2 Estructura del protocolo JDBC Componente Descripción jdbc Especifica que se está utilizando un protocolo JDBC subprotocol Indica el tipo de la fuente de datos. En este caso se utiliza postgresql. Cuando el DriverManager busca un driver registrado para conectarse a la fuente de datos, pasa este URL, entonces el driver puede determinar si puede manejar esta fuente de datos. host Indica el nombre del servidor donde se encuentra el manejador de la base de datos. Cuando se omite, se toma como predeterminado a localhost. port Especifica el número del puerto donde el servidor está atendiendo. El puerto estándar predeterminado de PostgreSQL es el número 5432. datasourcename Es el nombre que el manejador de la base de datos utiliza para identificar la base de datos. Parámetros opcionales Se puede utilizar para pasar información extra que es específica del driver. 7. Utilizar la conexión devuelta por el DataManager para acceder la fuente de datos. Un objeto tipo Connection representa una sesión con la fuente de datos, dentro de esta sesión se pueden ejecutar cualquier cantidad de instrucciones SQL. 8. Cerrar la conexión Para cerrar la conexión se llama al método close() del objeto tipo Connection. ¿Cómo obtener datos de la base de datos una vez que ya existe una conexión? La conexión con la base de datos se utiliza para enviar comandos e instrucciones SQL a la base de datos. La conexión actúa como una liga directa al driver de la base de datos. El programa cliente solicita un objeto SQL tipo statement a la conexión y deposita en él la instrucción a ejecutar. La conexión envía esta información al driver. El driver envía el objeto SQL a la base de datos y devuelve los resultados. Los resultados regresan al cliente en la forma de un result set. El objeto conexión tiene tres métodos que devuelven objetos que representan una llamada a la base de datos. Estos métodos son: createStatement(). Devuelve un objeto que implementa la interface statement. Se utiliza para ejecutar llamadas SQL únicas en la base de datos. prepareStatement(). Devuelve un objeto tipo preparedStatement que hereda de la interface statement. Maneja parámetros de entrada. Este tipo de statement puede ser más eficiente si se planea ejecutar una misma llamada SQL múltiples veces, porque puede ser precompilada. prepareCall(). Devuelve un objeto tipo callableSatetment que hereda del preparedStatement para manejar parámetros de salida. Se utiliza para ejecutar procedimientos almacenados que tienen parámetros de entrada y valores resultantes de salida.
  • 3. 3 Un objeto tipo statement tiene tres métodos para enviar SQL a la base de datos y ejecutar las llamadas a la base de datos: executeQuery(). Se utiliza generalmente para instrucciones tipo SELECT simples. executeUpdate(). Actualiza valores de la base de datos. Generalmente es utilizado para las instrucciones INSERT, UPDATE, DELETE, o comandos tipo DDL como CREATE. Este método devuelve el número de renglones afectados por el comando. execute(). Se utiliza para hacer llamadas a procedimientos almacenados que devuelven múltiples resultados. Los resultados de una consulta se devuelven en un ResultSet, el cual almacena los resultados en renglones y mantiene un apuntador al renglón actual. Cada valor dentro de un renglón puede accesarse por su nombre o por su posición. Ejemplo de un programa cliente que establece una conexión con una base de datos import java.sql.*; public class EjemploJDBC { public static void main(String args[]) { try { Class.forName(“postgresql.Driver”); String url = “jdbc:postgresql://148.208.221.22:5432/deptocomputacion”; Connection con = DriverManager.getConnection(url, “mari_clau”, “1234”); Statement stmt = con.createStatement(); // Se ejecuta una consulta y se devuelve el resultado en ResultSet ResultSet rs = stmt.executeQuery(“select * from estudiantes”); /* Se realizan iteraciones a través del ResultSet y se imprimen en pantalla los valores de algunos atributos del renglón. El ResultSet mantiene un apuntador al renglón de datos actual, inicialmente el apuntador es posicionado antes del primer renglón. El método next mueve el apuntador al siguiente renglón. */ while (rs.next()) { System.out.println(rs.getString(“nombre”) + “ “ + rs.getString(“direccion”)); } } catch(Exception e) { e.printStackTrace(); } }// fin del main }// fin de la clase EjemploJDBC