PDF de programación - JDBC: Conexiones con bases de datos desde Java

Imágen de pdf JDBC: Conexiones con bases de datos desde Java

JDBC: Conexiones con bases de datos desde Javagráfica de visualizaciones

Publicado el 25 de Abril del 2017
684 visualizaciones desde el 25 de Abril del 2017
287,6 KB
32 paginas
Creado hace 16a (21/04/2008)
JDBC: Conexiones con bases de datos desde Java

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y Computación

Universidad Complutense de Madrid

21 de abril de 2008

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y ComputaciónUniversidad Complutense de Madrid

JDBC: Conexiones con bases de datos desde Java

JDBC

Conexión con una fuentes de datos.

Realizar peticiones y actualizaciones.

Manejar los resultados de las consultas

Aplicación Java

JDBC

DBMS
Oracle

DBMS
MySQL

DBMS

PostgresSQL

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y ComputaciónUniversidad Complutense de Madrid

JDBC: Conexiones con bases de datos desde Java

Drivers JDBC

Es necesario un driver dependiente del proveedor de la Base de
datos.

MySQL MySQL java connector

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y ComputaciónUniversidad Complutense de Madrid

JDBC: Conexiones con bases de datos desde Java

Creando la base de datos

Fichero crea.sql

create d a t a b a s e valores ;
use valores ;

create table valores (

id int u n s i g n e d a u t o _ i n c r e m e n t primary key ,
nombre varchar (255) ,
ibex_id varchar (100) ,
url varchar (255) ,
tipo enum ( " a c c i o n e s " ," fondos " )

);

create table datos (

id int u n s i g n e d a u t o _ i n c r e m e n t primary key ,
valor int unsigned ,
fecha date ,
precio double ,
index ( fecha ) ,
unique index ( fecha , valor )
);

grant all on valores .* to luis i d e n t i f i e d by ’ diez799 ’;

~/ sql$ mysql -u root < crea . sql

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

1

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y ComputaciónUniversidad Complutense de Madrid

JDBC: Conexiones con bases de datos desde Java

Interfaz java.sql.Connection

Establece conexión con la base de datos. No tiene constructor.

Es un interfaz (está implementado en el driver).

Constuye instrucciones SQL precompiladas (método
prepareStatement).

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y ComputaciónUniversidad Complutense de Madrid

JDBC: Conexiones con bases de datos desde Java

Realizando conexión con la base de datos

package valores ;
import java . sql . C o n n e c t i o n ;
import java . sql . D r i v e r M a n a g e r ;
import java . sql . S Q L E x c e p t i o n ;

public class C o n e x i o n {

p r o t e c t e d static C o n n e c t i o n g e t M y s q l C o n n e c t i o n ( String url , String db ,

String user , String passwd )

throws C l a s s N o t F o u n d E x c e p t i o n ,
I n s t a n t i a t i o n E x c e p t i o n ,
SQLException ,
I l l e g a l A c c e s s E x c e p t i o n {

Class . forName ( " com . mysql . jdbc . Driver " ). n e w I n s t a n c e ();
return D r i v e r M a n a g e r . g e t C o n n e c t i o n ( " jdbc : mysql :// " + url + " / " + db +

" ? user = " + user + " & p a s s w o r d = " + passwd );

}
p r o t e c t e d static C o n n e c t i o n g e t M y s q l C o n n e c t i o n ()

throws C l a s s N o t F o u n d E x c e p t i o n ,
I n s t a n t i a t i o n E x c e p t i o n ,
SQLException ,
I l l e g a l A c c e s s E x c e p t i o n {

return g e t M y s q l C o n n e c t i o n ( " l o c a l h o s t " , " valores " , " luis " , " patata " );

}
p r o t e c t e d static String getFich ( String fich ) {

java . net . URL url = C l a s s L o a d e r . g e t S y s t e m R e s o u r c e ( fich );
return url . getPath ();

}

}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y ComputaciónUniversidad Complutense de Madrid

JDBC: Conexiones con bases de datos desde Java

Ficheros de datos

Fichero de valores: valores.csv
B S C H· B S C H· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / a c c i n d 1 _ 1 . htm
E n d e s a· E N D E S A· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / a c c i n d 1 _ 1 . htm
Repsol - Y P F· R E P S O L Y P F· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / a c c i n d 1 _ 1 . htm
A c c i o n a· A C C I O N A· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / a c c i n d 1 _ 1 . htm
I n d i t e x· I N D I T E X· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / a c c i n d 1 _ 1 . htm
T e l é f o n i c a· T E L E F O N I C A· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / a c c i n d 1 _ 1 . htm
Banco P o p u l a r· B A . P O P U L A R· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / a c c i n d 1 _ 1 . htm
Ebro - P u l e v a· E B R O P U L E V A· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / i g b m _ 3 _ 1 . htm
Mittal - S t e e l· A R C E L O R MIT .· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / i g b m _ 2 _ 1 . htm
I n d r a· I N D R A A· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / i g b m _ 6 _ 1 . htm
E A D S· E A D S· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / i g b m _ 2 _ 1 . htm
U n i p a p e l· U N I P A P E L· a c c i o n e s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / a c c i o n e s / i g b m _ 3 _ 1 . htm
Madrid B o l s a· M A D R I D B O L S A· f o n d o s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / fondos / h t m f o n d o s /0085 alfa . htm
Plus M a d r i d· P L U S M A D R I D· f o n d o s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / fondos / h t m f o n d o s /0085 alfa . htm
F o n C a i x a 65 · F O N C A I X A 65 BOLSA INDICE ESPA &#241; A· f o n d o s· h t t p :// www . b o l s a m a d r i d . es / esp / m e r c a d o s / fondos / h t m f o n d o s /0015 alfa100 . htm

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y ComputaciónUniversidad Complutense de Madrid

JDBC: Conexiones con bases de datos desde Java

Cargar datos

package valores ;
import java . io . B u f f e r e d R e a d e r ;
import java . io . F i l e R e a d e r ;
import java . io . I O E x c e p t i o n ;
import java . sql . C o n n e c t i o n ;
import java . sql . P r e p a r e d S t a t e m e n t ;
import java . sql . S Q L E x c e p t i o n ;
import java . util . Scanner ;
public class L e e V a l o r e s {

private static void i n s e r t a D a t o s ( C o n n e c t i o n con , B u f f e r e d R e a d e r in )

throws IOException , S Q L E x c e p t i o n {

. . . . . . . . . . . . . . . . . . . . .

}
public static void main ( String [] args ) throws E x c e p t i o n {

C o n n e c t i o n con = null ;
B u f f e r e d R e a d e r in = null ;
try {

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

con = C o n e x i o n . g e t M y s q l C o n n e c t i o n ();
in = new B u f f e r e d R e a d e r ( new F i l e R e a d e r ( C o n e x i o n . getFich ( " sql / valores . csv " )));
i n s e r t a D a t o s ( con , in );

} finally {

if ( con != null ) con . close ();
if ( in != null ) in . close ();

}

}

}

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y ComputaciónUniversidad Complutense de Madrid

JDBC: Conexiones con bases de datos desde Java

¿Dónde está el fichero sql/valores.csv?

| - - borra . sql
| - - crea . sql
| - - datos . csv
| - - u s u a r i o s . csv
‘-- valores . csv

| - - Entries
| - - R e p o s i t o r y
‘-- Root

| - - valores
| - - CVS
|
|
|
|
|
|
|
| - - C o n e x i o n . java
|
|
| - - C o n s i g u e D a t o s . java
| - - C o n s i g u e D a t o s . java .~1.1.~
|
| - - L e e D a t o s . java
|
|
‘-- L e e V a l o r e s . java

.
| - - | - - sql
|
|
|
|
|
| - - src
|
|
|
|
|
|
|
|
|
|
| - - classes
|
|
|
|
|

‘-- valores

| - - C o n e x i o n . class
| - - C o n s i g u e D a t o s . class
| - - L e e D a t o s . class
‘-- L e e E m p r e s a s . class

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y ComputaciónUniversidad Complutense de Madrid

JDBC: Conexiones con bases de datos desde Java

Accediendo sql/valores.csv

Los objetos de clase ClassLoader permitend acceder a los
recursos Java.

java . net . URL url = C l a s s L o a d e r . g e t S y s t e m R e s o u r c e ( fich );

fich debe estar dentro del CLASSPATH en la ejecución.

~/ Java$ export C L A S S P A T H =.:./ classes
~/ Java$ $ J A V A _ H O M E / bin / java valores . L e e V a l o r e s

1

1
2

Luis Fernando Llana Díaz

Departamento de Sistemas Informáticos y ComputaciónUniversidad Complutense de Madrid

JDBC: Conexiones con bases de datos desde Java

Cargar datos

private static final String sqlIns =

" insert into valores ( nombre , ibex_id , url , tipo ) " +
" values ( ? , ?

, ? , ?) " ;

private final static int NOMBRE =1;
private final static int IBEX_ID =2;
private final static int U R L _ B O L S A =3;
private final static int TIPO =4;

private static void i n s e r t a D a t o s ( C o n n e c t i o n con , B u f f e r e d R e a d e r in )

throws IOException , S Q L E x c e p t i o n {
String linea = in . r e a d L i n e ();
P r e p a r e d S t a t e m e n t pstmt = con . p r e p a r e S t a t e m e n t ( sqlIns );
while ( linea != null ) {

= scan . next ();

Scanner scan = new Scanner ( linea );
scan . u s e D e l i m i t e r ( " · " );
String nombre = scan . next ();
String ibex_id
String tipo = scan . next ();
String url = scan . next ();
System . out . println ( nombre + " : " + ibex_id + " : " + tipo
  • Links de descarga
http://lwp-l.com/pdf3205

Comentarios de: JDBC: Conexiones con bases de datos desde Java (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad