el prerequisito...
Primero debe tener instaladas las librerías de conectividad JDBC para el sistema de base de datos remoto o local que va a utilizar. Para el caso de MySql, he instalado la librería correspondiente en el directorio:
C:\JAVALIBS\mysql-connector
el archivo "jar" que nos interesa es
mysql-connector-java-3.1.7-bin.jar
la localización de esta librería debe estar especificada en la variable de entorno CLASSPATH que sirve para proveer la lista de librerías Java disponibles en su entorno separadas por punto y comas. Asegúrese que se encuentre el archivo en mención, si no entonces colóquelo al final de la lista
... ; ... ; ... ; C:\JAVALIBS\mysql-connector\mysql-connector-java-3.1.7-bin.jar
está listo para conectarse a MySql desde groovy !
El siguiente código es suficiente para lograr la conexión a la base de datos
Conexión rápida a MySql
1 import groovy.sql.Sql 2 3 def url = 'jdbc:mysql://localhost:3306/mySql' 4 def user = 'root' 5 def password = 'admin' 6 def driver = 'com.mysql.jdbc.Driver' 7 def db = Sql.newInstance(url,user,password,driver)
- url especifica el protocolo JDBC, la base de datos mysql, el servidor localhost, el puerto IP de comunicaciones 3306} y la base de datos mySql
- User es el usuario definido para lase de datos
- password es la clave de ingreso autorizada para el servidor y la base de datos especificada en el URL.
- El driver hace referencia a la librería utilizada
La variable db sostendrá la conexión luego de ejecutarse el método Sql.newInstance. Con esta conexión se podrían ejecutar sentencias DDL como crear una base de datos, cambiar la base de datos activa, crear una tabla, etc. mediante el método execute. Con el método eachRow se pueden hacer consultas SQL así como otras operaciones.
1 2 // crea una base de datos 3 db.execute "create database myDB" 4 5 // cambia de base de datos activa 6 db.execute "use myDB" 7 8 // realiza una consulta SQL 9 db.eachRow("SELECT * FROM ....") { } 10 11 // cierra la conexión 12 db.close()
El problema es que el código de conectividad expuesto no está parametrizado y no es reutilizable, por lo tanto necesitamos... "encapsular" la conectividad
MIL DISCULPAS, el blog original estubo tan laaaaargo que debí cortarlo.
No hay comentarios:
Publicar un comentario