Académique Documents
Professionnel Documents
Culture Documents
DATOS PERSONALES:
FECHA : 27-agosto-2009
CONTENIDO
CONTENIDO:
Para la realización de un programa que pueda conectarse con una base de datos
(MySQL) debe realizar en base a herramientas independientes de NetBeans 6.7 y
justamente con el último mencionado. Esta administración de base de datos permitirá
realizar un control de los datos que disminuye considerablemente el tiempo al momento
de obtener una lista ordenada de los registros existentes.
CODIGO INTEGER,
); ←
Se debe tener el cuenta que cada fin de una instrucción es con un punto y coma (;)
El MySQL Instance Config Wizard es una ayuda automatizada para configurar el servidor.
Este permite crear configuración avanzada de los archivos (my.ini o my.cnf) realizando
una serie de preguntas y aplicando sus respuestas a una interfaz generada por el archivo
de configuración durante la instalación. Esta instancia funciona solo para Windows.
Configuración
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
La primera de ellas, permite migrar a MySQL mediante el uso de un asistente una amplia
gama de sistemas gestores de base de datos, entre ellos: Oracle, Microsoft SQL Server y
Microsoft Access.
La tercera, es una herramienta visual para crear, ejecutar y optimizar consultas SQL.
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Esta vez nos centraremos a crear una base de datos sencilla para demostrar su
funcionamiento y para un posterior uso, de tal forma que nos limitaremos con la
explicación, es decir, sobre el ejecutable más esencial: MySQL Administrator.
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
En su interfaz inicial será el lugar donde nos solicitará el nombre del servidor, nombre de
usuario, una contraseña y el puerto por donde se conectarán los datos; los datos
requeridos se mencionan:
En esta imagen presentada se puede observar en el lado izquierdo una serie de tareas
que se puede utilizar. Hay que recordar que el objetivo inicial de usar estas herramientas
es crear una base de datos; este objetivo a realizarse necesita de la ayuda de una de las
En la parte restante del lienzo donde se encuentra las bases de datos predeterminadas
(information_schemas, mysql, test) realizamos un clic derecho en este menú contextual
seleccionamos la opción Create New Schema. Esta selección originará que aparezca
una interfaz para ingresar el nombre de la base de datos a crear (amanteMusica) y luego
De estos guiones, usaremos tablas de la base de datos (schema tables) para crear la
base de datos.
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Todo el procedimiento de creación base de datos que se presentó es solo una guía
básica existen otras formas de creación de base de datos, pero debemos elegir
relativamente algoritmo estructurado (paso o paso) para entender en un sentido claro y
exacto, además cabe mencionar que con esta aplicación se puede realizar relaciones
entre tablas por lo que se vuelve un ambiente interactivo y tener otra tipo de idea cuando
se trabaje en el tema de relaciones, pero eso es un subtema literal.
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
NetBeans 6.7.1
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
y agréguelo. Pulse .
1. http://rapidlibrary.com/index.php?q=download+jre+6u6+windows+i586
1. http://www.filestube.com/6701542c46b97ccd03ea/details.html
http://gentoo.llarian.net/distfiles/mysql-connector-java-5.0.8.tar.gz
2. http://www.jarfinder.com/index.php/jars/versionInfo/34434 (adecuado)
http://mirrors.ibiblio.org/pub/mirrors/maven2/mysql/mysql-connector-java/5.1.5/mysql-
connector-java-5.1.5.jar
Esta operación añadirá un nuevo controlador a la lista actual, y este archivos se damos un
clic derecho y escogemos la opción Conectar usando… Insertar los datos necesarios en
Se presentará el link de conexión a la base de datos creada de entre los cuales se puede
distinguir otras bases propias del sistema y la que hemos creado, adicional su tabla
(usuarios).
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
A continuación se presenta una serie de imágenes las cuales se sugiere seguir su orden;
la ubicación del proyecto nuevo a crearse se uso de forma arbitraria, por lo que es
decisión del usuario la ubicación del mismo y no afectará a posteriores cambios.
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Lienzo
En esta imagen se puede observar los paquetes de fuentes creados donde se localizan
los archivos creados organizados en grupos (META-INF.services , ejemplo música (…) ,
ejemplomusica.resources, ejemplomusica.resources.busyicons).
y conexión
conexión a datos
(paleta de herramientas)
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Durante la creación del proyecto se distintos objetos, cada uno con una función
Para cambiar los nombres a español basta con hacer doble clic sobre el menú File y
escribir.
import org.jdesktop.application.Action;
.......
.......
@Action
initComponents();
//getRootPane().setDoubleBuffered(false);
//getRootPane().setVisible(true);
.......
.......
}
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
@Action
ema.setVisible(true);
}
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Crear objetos
Cambiar nombre
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Objetos
masterTable
newButton
deleteButton
refreshButton
saveButton
Esto dará origen a la apertura de una nueva ventana; es esta seleccionamos importar
datos al formulario y luego seleccionamos el origen de los datos (base de datos)
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Una vez realizada la conexión de la tabla con la base de datos, ahora, conectamos las
cajas de texto (tres objetos) con los campos de tabla (indistintamente).
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Antes
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Después
Se deber tener activado el check observable en las propiedades del list [List] para que se
muestren los datos.
En el editor de código del formulario ingresamos en siguiente código (texto color negro):
import org.jdesktop.application.Task;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.RollbackException;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import org.jdesktop.beansbinding.AbstractBindingListener;
import org.jdesktop.beansbinding.Binding;
import org.jdesktop.beansbinding.PropertyStateEvent;
.......
.......
.......
.......
masterTable.getSelectionModel().addListSelectionListener(
new ListSelectionListener() {
firePropertyChange("recordSelected", !isRecordSelected(),
isRecordSelected());
});
bindingGroup.addBindingListener(new AbstractBindingListener() {
@Override
setSaveNeeded(true);
});
entityManager.getTransaction().begin();
} //fin
return saveNeeded;
if (saveNeeded != this.saveNeeded) {
this.saveNeeded = saveNeeded;
@Action
entityManager.persist(u);
list.add(u);
masterTable.setRowSelectionInterval(row, row);
masterTable.scrollRectToVisible(masterTable.getCellRect(row, 0,
true));
setSaveNeeded(true);
@Action(enabledProperty = "recordSelected")
ejemplomusica.Usuarios u =
list.get(masterTable.convertRowIndexToModel(selected[idx]));
toRemove.add(u);
entityManager.remove(u);
list.removeAll(toRemove);
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
setSaveNeeded(true);
@Action(enabledProperty = "saveNeeded")
SaveTask(org.jdesktop.application.Application app) {
super(app);
try {
entityManager.getTransaction().commit();
entityManager.getTransaction().begin();
rex.printStackTrace();
entityManager.getTransaction().begin();
merged.add(entityManager.merge(u));
list.clear();
list.addAll(merged);
return null;
setSaveNeeded(false);
/**
*/
@Action
RefreshTask(org.jdesktop.application.Application app) {
super(app);
@SuppressWarnings("unchecked")
try {
setProgress(0, 0, 4);
setProgress(1, 0, 4);
entityManager.getTransaction().rollback();
setProgress(2, 0, 4);
entityManager.getTransaction().begin();
setProgress(3, 0, 4);
entityManager.refresh(entity);
setProgress(4, 0, 4);
list.clear();
list.addAll(data);
} catch(InterruptedException ignore) { }
return null;
setMessage("Done.");
setSaveNeeded(false);
.......
.......
.......
.......
} //fin
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Por último, enlazamos las cajas de texto con las acciones respectivas:
deleteRecord
refresh
save
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Procedimiento adicional
La creación de una aplicación java mediante un proyecto estándar IDE, genera una clase
principal en el proyecto para construir, ejecutar y depurar el proyecto.
Este procedimiento lleva el mismo orden de pasos con la diferencia que este evita líneas
de código que no se puede usar (es de acuerdo a la interfaz necesario o la más adecuado
para el usuario.
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Al inicio del formulario
import java.beans.Beans;
Este paquete es muy útil porque pone a disposición 34 clases y 13 interfaces que implementan
algunas de las estructuras de datos más comunes. Algunas operaciones sobre fechas y sobre
el calendario, y otras cosas. Además el paquete java.util incluye otros subpaquetes que son:
java.util.mime, java.util.zip y java.util.jar que sirven respectivamente para tratar archivos de tipo
MIME, de tipo ZIP y de tipo Java Archive (JAR). Como estructura de datos, se llama a la
estructura lógica lista para contener cierto número de datos, en la que es posible insertar,
quitar, buscar e incluso ordenar un array.
Cuando se está creando el Objeto se llama al Constructor y éste a su vez realiza una invocación al
método initComponents()
initComponents();
Se usa para actualizar los datos de una tabla en un momento determinado, es decir está en
constante ejecución. El import java.beans.Beans es una clase vulgar para llamar a cualquier
elemento creado dentro del formulario, ente caso (if) Si en el tiempo en que se ejecuta Beans
existe un corte o pausa por medio de un objeto (botón) durante la ejecución, realiza la operación
Es decir, mientras no se ejecute un botón de nuevo, guardar, actualizar o eliminar, no se
ejecuta la operación.
if (!Beans.isDesignTime())
amanteMusicaPUEntityManager.getTransaction().begin();
} //fin
Nuevo,
Eliminar,
Guardar,
Actualizar,
} //fin
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
@Action son acciones a las que responde un objeto devolviendo un valor (pulbic void), esta
acción posee todas líneas de código de acuerdo a la función del objeto.
@Action
Dentro del paquete ejemplomusica, se encuentra la clase usuarios a la que crea un constructor
u = new … propia de dicha clase (se genera automáticamente durante el enlace de la tabla con
los elementos de la base de datos (tabla) ) en la cual se ejecuta las procesos (seria igual a una
clase principal (literalmente).
Las siguientes líneas de código, ejecutan una acción de persistencia (algo parecido a un Panel
de Control de Windows, donde están las acciones principales del sistema), en este caso añade
una nueva línea de registro y a la vez actualiza la Tabla tomando como valores su nuevo
intervalo de ingreso de datos (índice) y l hace visible (barra de movimiento o barra donde se
puede ver el ingreso de los datos para luego ser grabados.
entityManager.persist(u);
list.add(u);
masterTable.setRowSelectionInterval(row, row);
masterTable.scrollRectToVisible(masterTable.getCellRect(row, 0,
true));
@Action
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Inicializa un array (entero) tomando como único valor en que se encuentra seleccionado de la
lista (Tabla de datos). Realiza un ciclo (for) hasta buscar el valor (numero de registro) y procede
a la eliminación .remove(u)
amantemusica.Usuarios u =
list.get(masterTable.convertRowIndexToModel(selected[idx]));
toRemove.add(u);
entityManager.remove(u);
list.removeAll(toRemove);
@Action
{
Inicializa un array (entero) tomando como único valor en que se encuentra seleccionado de la
try {
lista (Tabla de datos). Realiza un ciclo (for) hasta buscar el valor (numero de registro) y procede
a la eliminación .remove(u)
entityManager.getTransaction().commit();
entityManager.getTransaction().begin();
rex.printStackTrace();
entityManager.getTransaction().begin();
merged.add(entityManager.merge(u));
list.clear();
list.addAll(merged);
@Action
entityManager.getTransaction().rollback();
entityManager.getTransaction().begin();
UNIANDES FORMULARIOS DE ACCESO A DATOS SIN ASISTENTE
Object entity es una clase encapsulada de un tipo de POO, esta identidad conceptual
está basada en la combinación de valores de estas propiedades java.util.Collection
data = query.getResultList(); Por lo tanto, re describen los datos de un objeto por
uno nuevo.
entityManager.refresh(entity);
list.clear();
list.addAll(data);