Debo confersame. Me gusta usar WordPress como plataforma para mis proyectos en Internet. El uso de varias de sus clases y APIs me facilitan mucho la vida y sobretodo me permiten ahorrar tiempo.
Desde mis primeros días en la universidad, empecé a aprender Java con el pasar de los semestres despertó la necesidad de conectar mis proyectos en Java con una base de datos. En aquel entonces un profesor nos compartió una clase (de programación) suya para dicha tarea.
Sin embargo, tener un enredo de excepciones para alguien que tiene del viejo PHP (donde hablar de excepciones era casi un chiste) era algo bastante tedioso.
Una de las formas más prácticas con las que he trabajado conectando a base de datos es con la clase WP-DB de WordPress, por lo que decidí «migrar» esos métodos a Java.
La clase DB cuenta con otras subclases que le permiten estructurar los resultados y las sentencias como insertar o actualizar.
Conectando a la Base de datos
Para conectar a la base de datos debes cargar las librerías jar en tu proyecto. Luego puedes crear una URL jdbc para realizar la conexión o usar los métodos integrados para conectar a SQLite, MySQL o SQL Server.
WPDB db = new WPDB(); db.conectar_mysql("localhost", "root", "1234"); if( db.connected() ){ System.out.println("Conectado"); } else { System.out.println("Error al conectar"); }
Solicitando datos
Para trabajar con la información de un SELECT puedes hacer de la siguiente manera:
// Primera forma int resultados = db.query("SELECT * FROM productos"); ArrayList<DBEntry> datos = db.get_results(); // Segunda Forma ArrayList<DBEntry> datos = db.get_results("SELECT * FROM productos"); for( DBEntry entrada : datos ){ System.out.println( "ID: " + entrada.get("id") ); System.out.println( "Nombre Producto: " + entrada.get("nombre") ); }
Ingresando datos
int insert = db.insert("producto", db.create_entry().add("nombre", "Producto Nuevo").add("precio", "12.00") ); if( insert > 0 ){ System.out.println( "Producto ingresado correctamente." ); }
Actualizando entradas
DBEntry datos = db.create_entry().add("nombre", "Producto Nuevo").add("precio", "15.00"); DBWhere where = db.create_where().add("id", "=", 6); int update = db.update("producto", datos, where ); if( update > 0 ){ System.out.println( "Producto actualizado correctamente." ); }
La clase en Java
Aquí les dejo la clase en Java para que puedan copiar y pegar y usarla en sus proyectos. Si tienen alguna observación o mejora no duden en escribirla en los comentarios.