The::Beastieux

Sangre de Bestia + Corazón de Pingüino | Un blog acerca de Linux, *BSD, Open Source, Software Libre, Programación …

Archivos por Etiqueta: MySQL

Código Java – Llenar un JTable desde una consulta a Base de Datos


Este es el Ejemplo #13 del Topic: Programación Gráfica en Java.

Después de haber aprendido a establecer la conexión a diferentes motores de base de datos mediante JDBC, el siguiente paso es realizar las consultas y mostrarlas. Para el ejemplo hago uso de un JTable para mostrar los datos provenientes de las consultas y para efectos didácticos he preferido usar PostgreSQL, aunque usted puede hacer uso del motor de base de datos que prefiera como cualquiera de las clases implementadas en el topic: Código Java – Establecer Conexión a Base de Datos con JDBC, que deberán ser incluidas en su proyecto, lo único que debería hacer es cambiar las instancias a las clases correspondientes como se muestra en las lineas siguientes,todo lo demás se mantiene. Observar que para este ejemplo he construido un JTable con solo 3 columnas, por ello limitarse a una consulta que retorne 3 columnas o modificar el código respectivo para ampliarlo:

Conexión a PostgreSQL:

...
        Ejm12_1_ConectarPostgreSQL cnndb = new Ejm12_1_ConectarPostgreSQL();
        CachedRowSet crs = cnndb.Function("SELECT deptno, dname, loc FROM dept")
...

Conexión a MySQL:

...
        Ejm12_2_ConectarMySQL cnndb = new Ejm12_2_ConectarMySQL();
        CachedRowSet crs = cnndb.Function("SELECT Host, User, Password FROM user");
...

Código de Ejemplo:

package beastieux.gui;

import javax.sql.rowset.CachedRowSet;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

/**
 *
 * @author beastieux
 */
public class Ejm13_LlenarJTableDesdeDataBase extends JFrame{

    DefaultTableModel dtmEjemplo;
    JTable tblEjemplo;
    JScrollPane scpEjemplo;
    public Ejm13_LlenarJTableDesdeDataBase()
    {

        tblEjemplo = new JTable();
        scpEjemplo= new JScrollPane();

        //Llenamos el modelo
        dtmEjemplo = new DefaultTableModel(null,getColumnas());

        setFilas();

        tblEjemplo.setModel(dtmEjemplo);
        scpEjemplo.add(tblEjemplo);
        this.add(scpEjemplo);
        this.setSize(500, 200);

        scpEjemplo.setViewportView(tblEjemplo);

        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    }

    //Encabezados de la tabla
    private String[] getColumnas()
    {
          String columna[]=new String[]{"Columna1","Columna2","Columna3"};
          return columna;
    }

    private void setFilas()
    {
        //Conectar a PostgreSQL\\
        Ejm12_1_ConectarPostgreSQL cnndb = new Ejm12_1_ConectarPostgreSQL();
        CachedRowSet crs = cnndb.Function("SELECT deptno, dname, loc FROM dept");

        Object datos[]=new Object[3]; //Numero de columnas de la tabla

        try {
            while (crs.next()) {
                for (int i = 0; i < 3; i++) {
                        datos[i] = crs.getObject(i + 1);
                }
                dtmEjemplo.addRow(datos);
            }

            crs.close();
        } catch (Exception e) {
        }
    }

    public static void main(String args[]) {
        Ejm13_LlenarJTableDesdeDataBase obj1 = new Ejm13_LlenarJTableDesdeDataBase();
        obj1.setVisible(true);
    }

}

Código Java – Conexión a Base de Datos MySQL


Este es el Ejemplo #12.2 del Topic: Programación Gráfica en Java, que viene a formar parte del Topic #12 Código Java – Establecer Conexión a Base de Datos con JDBC

Como he explicado en el Topic #12, para realizar las conexiones necesitaremos los drivers respectivos, de acuerdo al motor de base de datos al cual deseemos conectarnos. En este ejemplo estableceremos una conexión con MySQL, para el cual es necesario contar con la respectiva librería como la que se muestra a continuación:

MySQL JDBC Driver - mysql-conector-java-5.1.3-bin.jar

Ustedes deberán conseguir la librería de acuerdo a la versión de MySQL al cual deseen conectarse y establecer los parámetros de conexión como se muestra en el código siguiente:

package beastieux.gui;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

import javax.sql.rowset.CachedRowSet;
import com.sun.rowset.CachedRowSetImpl;
/**
 *
 * @author beastieux
 */
public class Ejm12_2_ConectarMySQL {

    public CachedRowSet Function(String sql)
    {

            try
            {
                    Class.forName("org.gjt.mm.mysql.Driver");

                    String url = "jdbc:mysql://127.0.0.1:3306/mysql";
                    Connection con = DriverManager.getConnection(url, "usuario","contraseña");
                    Statement s = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                                                      ResultSet.CONCUR_READ_ONLY);

                    ResultSet rs= s.executeQuery(sql);

                    CachedRowSet crs = new CachedRowSetImpl();
                    crs.populate(rs);

                    rs.close();
                    s.close();
                    con.close();

                    return crs;

            }
            catch(Exception e)
            {
                   System.out.println(e.getMessage());
            }

            return null;
    }

    public void StoreProcedure(String sql)
    {

            try
            {
                    Class.forName("org.gjt.mm.mysql.Driver");

                    String url = "jdbc:mysql://127.0.0.1:3306/mysql";
                    Connection con = DriverManager.getConnection(url, "usuario","contraseña");
                    Statement s = con.createStatement();

                    s.execute(sql);

                    s.close();
                    con.close();

            }
            catch(Exception e)
            {
                   System.out.println(e.getMessage());
            }
    }
}

Instalación y configuración de MySQL 5.x en PC-BSD 7


Después de tener configurado Apache y PHP, será necesario que instalemos MySQL, para montar una pagina web donde sea indispensable contar con un motor de base de datos.

Basado en normas de FreeBSD

La versión que instalaremos será mysql51-server.

1) Vamos a instalar mysql desde los ports:

# cd /usr/ports/databases/mysql51-server/ && make install clean

Dejamos que el sistema se haga cargo de la descarga, compilacion e instalación.
Las dos ultimas lineas de código muestra el proceso de limpieza del directorio de compilación de los paquetes que se instalaron:
===>  Cleaning for mysql-client-5.1.28_1
===>  Cleaning for mysql-server-5.1.28_1

2) Establecemos el directorio de datos de inicio:

# /usr/local/bin/mysql_install_db

3)Seleccionamos el archivo de configuración que asignaremos a mysql:

# cp /usr/local/share/mysql/my-medium.cnf /var/db/mysql/my.cnf

En /usr/local/share/mysql/ hay 4 archivos importantes, en el ejemplo optamos por my-medium.cnf:

my-small.cnf Para sistemas de bajos recursos con 64MB de RAM o menos.
my-medium.cnf Para sistemas hasta con 128MB de RAM, ideal para servidor web
my-large.cnf Para sistemas con 512MB de RAM, ideal para servidor MySQL dedicados
my-huge.cnf Para sistemas con 1GB o 2GB de RAM, ideal para datacenters.

5) Cambiamos de propietario el directorio /var/db/mysql/ :

#chown -R mysql:mysql /var/db/mysql

6) Asignamos una contraseña a root:

# /usr/local/bin/mysqladmin -u root password ‘escribe_la_contraseña’

7) Editamos rc.conf para que mysql se inicie al arrancar el sistema:

# edit /etc/rc.conf

mysql_enable=”YES”

Control+c

command:exit

8.) Reiniciamos el servicio ‘mysql’

# /usr/local/etc/rc.d/mysql-server restart

Pueden consultar algunos datos adicionales aqui, yo omití algunos.

Ir a: Montar un Servidor Web en PC-BSD 7

Montar un Servidor Web en PC-BSD 7


En los siguientes post’s, explicaré como levantar un servidor web en PC-BSD 7 Fibonacci Edition, basándome en parte de la metodología de FreeBSD. Para ello he enlazado algunos links de referencia que creo son entendibles, como también, he explicado detalladamente donde creí que era necesario hacerlo. Esto servirá para finalmente lograr montar nuestra web sobre PC-BSD.

 

I. Instalación y Post Instalación de PC-BSD 7

II. Instalación y configuración de Apache

III. Instalación y configuración de PHP

IV. Instalación y configuración de MySQL

V. Instalación y configuración de Joomla

VI. Reemplazar Apache por Cherokee (último)

A %d blogueros les gusta esto: