Ir al contenido principal

Snippets Mongo DB

 Esta publicación servirá para ir colocando fragmentos de consultas que en algún momento me fueron útiles para usarlo en MongoDB Fragmento 1:  Se requería obtener todos los elementos que dentro de un atributo que es de tipo array(arreglo) coincida  con type:"fire"  Fragmento 2: Se requería actualizar el atributo " lastUpdate "  de toda la colección donde la  edad sea mayor o igual a 15.

Patron singleton en java

Esta vez voy a mostrar un patrón muy común en mis desarrollos , trata de el patrón Singleton de manera practica iré mostrando el ejemplo que realice con el respectivo código. El ejemplo del patrón realiza una conexión a base de datos mysql para hacer un select de una tabla.

Este es el diagrama 



Pues bien creamos el proyecto

Dentro del src creamos el paquete com.elkardumen.conexion para crear la clase ConnectDB que utilizaremos para crear el patrón , esto debe quedar mas o menos asi


Colocamos el código

package com.elkardumen.conexion;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class ConnectDB {

private static Connection connect;
private static ConnectDB instance;

private ConnectDB() {

try {

Class.forName("com.mysql.jdbc.Driver");
// connect DB
connect = DriverManager.getConnection("jdbc:mysql://127.0.0.1/MyDataBase","root", "");
}

catch (SQLException e) {
System.err.println(e.getMessage());

}

catch (ClassNotFoundException e) {
System.err.println(e.getMessage());
}
}

public static ConnectDB getInstance() {
//Esto servira para que solo se haga una vez garantizando el patron singleton
if (instance == null) {
System.out.println("Se crea la instancia solo una vez garantizanco el patron Singleton");
instance = new ConnectDB();
}

return instance;

}

public static Connection getConnect() {
return connect;
}

public static void setConnect(Connection connect) {
ConnectDB.connect = connect;
}


}

Creamos la clase Principal en el paquete com.elkardumen colocando el siguiente código:


package com.elkardumen;

import java.sql.ResultSet;
import java.sql.Statement;

import com.elkardumen.conexion.ConnectDB;

public class Principal {

/**
* @param args
*/
public static void main(String[] args) {
try{
//Creamos El primer llamado
ConnectDB con = ConnectDB.getInstance();
Statement stmt = con.getConnect().createStatement();
String query = "select * from micatalogo;" ;
ResultSet rs = stmt.executeQuery(query) ;
while (rs.next())
{
System.out.println (rs.getInt (1) + " - " + rs.getString (2)+ " - " + rs.getString(3));
}
//Creamos El segundo llamado
ConnectDB con2 = ConnectDB.getInstance();
Statement stmt2 = con2.getConnect().createStatement();
rs = stmt.executeQuery(query) ;
while (rs.next())
{
System.out.println (rs.getInt (1) + " - " + rs.getString (2)+ " - " + rs.getString(3));
}
}catch(Exception e){
e.printStackTrace();
}


}


}

En espera de que sirva de algo coloco el proyecto listo para descargar


Comentarios

  1. venga!!! minino un saludito no!!!

    ResponderBorrar
  2. Hola gracias por la explicación del patrón, lo estoy probando con EJB, JSP, Servlet y Dao en un CRUD de prueba... Reitero Gracias

    ResponderBorrar

Publicar un comentario

Entradas más populares de este blog

Resetear usuario y contraseña Weblogic

Esta ocasión se me presento un pequeño problema con el acceso a mi weblogic local, podía levantar mi weblogic pero para entrar a la consola no tenia el usuario ni password (Autenticación Denegada Weblogic).Por lo que busque en la red para poder resetear el usuario y password de weblogic.

No se puede llamar Invoke o a BeginInvoke

Que tal banderola pues aca escribiendo sobre un error que me dio al instalar el administrador Microsoft SQL 2008 , pues bien resulta que necesitaba instalar esta tool, y cuando trataba de iniciar el wizard me lanzaba un error que decia algo asi " No se puede llama a Invoke o a BeginInvoke en un control hasta que se halla creado el indentificador de ventana" si no me creen vean la imagen : y entonces me dije a mi mismo, "mi mismo como le voy hacer" entonces pues tube que recurrir a mi salvacion como siemore :D San Google.com, y ya con unas cuantas palabras clave pues que me lanza algunos resultados de los cuales me habia encontrado algo como esto: Problemas al instalar SQL Server 2008 ? Para lo cual no hice caso a este tip pues resulta que yo no tenia instaldo el windows xp, mas bien tenia instalado el windows 7 por que leyendo en los comentarios que se habian hecho llegue a un muy buen tip que decia algo asi: "Para aquellos compañeros que quieren instalar el S