Buenas tardes, espero que todos esten muy bien.
Me da mucho gusto saber que se han motivado con el desarrollo del proyecto para aprender mas sobre le lenguaje de programación Java y el desarrollo de software.
A continuacion les comparto un link para que descarguen un libro que a mi parecer es uno de los mas importantes y completo para el trabajo y documentación del lenguaje Java, está escaneado pero puede ser muy util como referencia de aprendizaje hasta tener el impreso que les recomiendo mucho.
https://www.dropbox.com/s/j9d0sja6sepqzim/Como%20Programar%20en%20Java%207ma%20Edicion%20%28Deitel%20%26%20Deitel%29.pdf.
Saludos y que tengan muchos éxitos.
martes, 17 de diciembre de 2013
domingo, 15 de diciembre de 2013
Generar tabla a partir de consulta en base de datos
Connection conexion = (Connection) ConexionDb.GetConnection();
try {
//Para establecer el modelo al JTable
DefaultTableModel modelo = new DefaultTableModel();
this.jtQuery.setModel(modelo);
//Para conectarnos a nuestra base de datos
//Para ejecutar la consulta
Statement s = conexion.createStatement();
//Ejecutamos la consulta que escribimos en la caja de texto
//y los datos lo almacenamos en un ResultSet
ResultSet rs = s.executeQuery(txtQuery.getText());
//Obteniendo la informacion de las columnas que estan siendo consultadas
ResultSetMetaData rsMd = rs.getMetaData();
//La cantidad de columnas que tiene la consulta
int cantidadColumnas = rsMd.getColumnCount();
//Establecer como cabezeras el nombre de las colimnas
for (int i = 1; i <= cantidadColumnas; i++) {
modelo.addColumn(rsMd.getColumnLabel(i));
}
//Creando las filas para el JTable
while (rs.next()) {
Object[] fila = new Object[cantidadColumnas];
for (int i = 0; i < cantidadColumnas; i++) {
fila[i] = rs.getObject(i + 1);
}
modelo.addRow(fila);
}
rs.close();
conexion.close();
} catch (Exception ex) {
ex.printStackTrace();
}
try {
//Para establecer el modelo al JTable
DefaultTableModel modelo = new DefaultTableModel();
this.jtQuery.setModel(modelo);
//Para conectarnos a nuestra base de datos
//Para ejecutar la consulta
Statement s = conexion.createStatement();
//Ejecutamos la consulta que escribimos en la caja de texto
//y los datos lo almacenamos en un ResultSet
ResultSet rs = s.executeQuery(txtQuery.getText());
//Obteniendo la informacion de las columnas que estan siendo consultadas
ResultSetMetaData rsMd = rs.getMetaData();
//La cantidad de columnas que tiene la consulta
int cantidadColumnas = rsMd.getColumnCount();
//Establecer como cabezeras el nombre de las colimnas
for (int i = 1; i <= cantidadColumnas; i++) {
modelo.addColumn(rsMd.getColumnLabel(i));
}
//Creando las filas para el JTable
while (rs.next()) {
Object[] fila = new Object[cantidadColumnas];
for (int i = 0; i < cantidadColumnas; i++) {
fila[i] = rs.getObject(i + 1);
}
modelo.addRow(fila);
}
rs.close();
conexion.close();
} catch (Exception ex) {
ex.printStackTrace();
}
miércoles, 11 de diciembre de 2013
Base de datos estandar para el proyecto de la tienda de don Pedro
Cambian algunos atributos para el proyecto para evitar atributos multivalor, por ejemplo(nombres, apellidos, teléfonos). Para el proyecto todos trabajaremos con la misma estructura de tablas y bases de datos. Se debe seguir lo siguiente en cuanto a nombres y su escritura:
Nombre de la base de datos: tienda
Tabla 1: cliente
atributos:
cedula (varchar)
nombre (varchar)
apellido (varchar)
direccion (varchar)
telefono (varchar)
email (varchar)
Tabla 2: cajero
atributos:
cedula (varchar)
nombre (varchar)
apellido (varchar)
direccion (varchar)
telefono (varchar)
email (varchar)
sueldo (INT)
horario (varchar)
eps (varchar)
Tabla 3: producto
atributos:
codigobarras (varchar)
nombre (varchar)
cantidad (INT)
ubicacion (varchar)
precio (INT)
Queda pendiente la tabla para la factura. Se agregará posteriormente en la ultima fase del proyecto.
Nombre de la base de datos: tienda
Tabla 1: cliente
atributos:
cedula (varchar)
nombre (varchar)
apellido (varchar)
direccion (varchar)
telefono (varchar)
email (varchar)
Tabla 2: cajero
atributos:
cedula (varchar)
nombre (varchar)
apellido (varchar)
direccion (varchar)
telefono (varchar)
email (varchar)
sueldo (INT)
horario (varchar)
eps (varchar)
Tabla 3: producto
atributos:
codigobarras (varchar)
nombre (varchar)
cantidad (INT)
ubicacion (varchar)
precio (INT)
Queda pendiente la tabla para la factura. Se agregará posteriormente en la ultima fase del proyecto.
miércoles, 4 de diciembre de 2013
Ejemplo Ingreso de datos por interfaz gráfica.
El siguiente es un ejemplo para trabajar interfaz gráfica usando java swing y base de datos mySQL en el que se puede ingresar los datos en la tabla estudiante.
Para poderlo usar debe crear es su computador una base de datos llamada:
biblio
Debe tener una tabla llamada:
estudiante
Y las columnas deben ser las sigueintes:
TI
nombre
apellido
grado
jornada
Se debe seguir al pie de la letra los nombres de la base de datos, tabla y columnas.
la base de datos creada en netbeans debe verse de la siguiente forma:
Para poderlo usar debe crear es su computador una base de datos llamada:
biblio
Debe tener una tabla llamada:
estudiante
Y las columnas deben ser las sigueintes:
TI
nombre
apellido
grado
jornada
Se debe seguir al pie de la letra los nombres de la base de datos, tabla y columnas.
la base de datos creada en netbeans debe verse de la siguiente forma:
Luego de tener la base de datos lista, descargue el siguiente paquete y descomprimalo en su computador,
Lo anterior es un proyecto de netbeans.
Habralo con netbeans y ejecute el archivo estudiante, que es la interfaz gráfica para colocar un nuevo registro en la base de datos, revise que la operación se realizó con éxito mirando en la base de datos desde netbeans.
Atención!!
Para quienes no usan password al conectar la base de datos (la mayoria de los casos)
deben modificar el archivo ConexionDb en la line 25 que originalmente tiene:
String passwordDB = "root";
Por:
String passwordDB = "";
Por favor cualquier duda preguntar por correo electrónico.
Saludos
Archivo conexion de base datos desde java
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package biblio;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JOptionPane;
/**
*
* @author kaaf
*/
public class ConexionDb {
public static Connection GetConnection() {
Connection conexion = null;
try {
Class.forName("com.mysql.jdbc.Driver");
String servidor = "jdbc:mysql://localhost/biblio";
String usuarioDB = "root";
String passwordDB = "root";
conexion = DriverManager.getConnection(servidor, usuarioDB, passwordDB);
} catch (ClassNotFoundException ex) {
JOptionPane.showMessageDialog(null, ex, "Error1 en la Conexión con la BD " + ex.getMessage(), JOptionPane.ERROR_MESSAGE);
conexion = null;
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, ex, "Error2 en la Conexión con la BD " + ex.getMessage(), JOptionPane.ERROR_MESSAGE);
conexion = null;
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, ex, "Error3 en la Conexión con la BD " + ex.getMessage(), JOptionPane.ERROR_MESSAGE);
conexion = null;
} finally {
return conexion;
}
}
public static void main(String[] args) {
Connection miConexion = (Connection) ConexionDb.GetConnection();
try {
Statement statement = (Statement) miConexion.createStatement();
String TI = "59595";
String nombre = "pepito";
String apellido = "perez";
int grado = 1; //Aquí se asigna a la fecha en un formato el cual puede ser cambiado
String jornada = "tarde";
statement.execute("insert into estudiante values('" + TI + "','" + nombre + "','" + apellido + "','" + jornada + "','" + grado + "')");
System.out.print("Datos ingresados correctamente");
statement.close();
miConexion.close();
} catch (Exception ex) {
System.out.print("Error "+ex.getMessage());
}
}
}
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package biblio;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JOptionPane;
/**
*
* @author kaaf
*/
public class ConexionDb {
public static Connection GetConnection() {
Connection conexion = null;
try {
Class.forName("com.mysql.jdbc.Driver");
String servidor = "jdbc:mysql://localhost/biblio";
String usuarioDB = "root";
String passwordDB = "root";
conexion = DriverManager.getConnection(servidor, usuarioDB, passwordDB);
} catch (ClassNotFoundException ex) {
JOptionPane.showMessageDialog(null, ex, "Error1 en la Conexión con la BD " + ex.getMessage(), JOptionPane.ERROR_MESSAGE);
conexion = null;
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, ex, "Error2 en la Conexión con la BD " + ex.getMessage(), JOptionPane.ERROR_MESSAGE);
conexion = null;
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, ex, "Error3 en la Conexión con la BD " + ex.getMessage(), JOptionPane.ERROR_MESSAGE);
conexion = null;
} finally {
return conexion;
}
}
public static void main(String[] args) {
Connection miConexion = (Connection) ConexionDb.GetConnection();
try {
Statement statement = (Statement) miConexion.createStatement();
String TI = "59595";
String nombre = "pepito";
String apellido = "perez";
int grado = 1; //Aquí se asigna a la fecha en un formato el cual puede ser cambiado
String jornada = "tarde";
statement.execute("insert into estudiante values('" + TI + "','" + nombre + "','" + apellido + "','" + jornada + "','" + grado + "')");
System.out.print("Datos ingresados correctamente");
statement.close();
miConexion.close();
} catch (Exception ex) {
System.out.print("Error "+ex.getMessage());
}
}
}
Suscribirse a:
Entradas (Atom)
