0% encontró este documento útil (0 votos)
17 vistas6 páginas

Practica1 Java

La guía de trabajo detalla la creación de un proyecto en NetBeans llamado 'TerceroMañana', incluyendo la estructura de carpetas y la conexión a una base de datos MySQL. Se describen los pasos para diseñar formularios y programar funcionalidades en Java, como habilitar y deshabilitar botones, limpiar campos de texto y realizar operaciones CRUD en una tabla de marcas. Además, se incluyen métodos para cargar y filtrar datos en una grilla, así como la validación de campos vacíos.

Cargado por

matheocoronel0
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
17 vistas6 páginas

Practica1 Java

La guía de trabajo detalla la creación de un proyecto en NetBeans llamado 'TerceroMañana', incluyendo la estructura de carpetas y la conexión a una base de datos MySQL. Se describen los pasos para diseñar formularios y programar funcionalidades en Java, como habilitar y deshabilitar botones, limpiar campos de texto y realizar operaciones CRUD en una tabla de marcas. Además, se incluyen métodos para cargar y filtrar datos en una grilla, así como la validación de campos vacíos.

Cargado por

matheocoronel0
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

GUIA DE TRABAJO

Asignatura : LABORATORIO - LENGUAJE DE PROGRAMACIÓN JAVA con NetBeans


Profesor : Mag. Lic. Jorge Rojas Páez

EJERCICIOS: Creación de formulario marca


1. Crear un proyecto en NetBeans con el nombre “TerceroMañana” con las siguientes
subcarpetas en el SRC:
C:\ TerceroMañana \Src
• Form
• Informes
• DER
• Datos
• prog
• librerias

2. Diseñar una base de datos en Dbdesigner 4 y guardar con el nombre “Stock” en la


carpeta <DER> El mismo deberá contener las siguientes tablas:

3. Crear la Base de Datos “bdatos” en MySQL Yog 5.0


• Abrir el Programa SQL yog
• En la caja “Conect to MySQL Host” seguir los siguientes pasos:
- Clic en el Botón “New”, y escribir la nueva conexión “Stock” y presionar
el botón Ok
- My SQL Host Addres: Localhost
- User name: root
- Password:
- Database: bdatos

4. Agregar las librerías:

5. Ejecutar el programa de conexión con la Base de datos

package prog;

import [Link].*;
import [Link];
import [Link];

public class Conectar {

public Connection coneccion = null;

public Statement st;


public ResultSet re;

public Conectar() {//constructor


try {
[Link]("[Link]").newInstance();
coneccion = (Connection) [Link]("jdbc:mysql://localhost/bdatos", "root", "");
[Link](null, "Se ha conectado a la base de datos....");
} catch (Exception e) {
[Link](null, "Error al realizar la conexion", "Error....",
JOptionPane.ERROR_MESSAGE);
[Link](0);
}
}

public static void main(String[] arg) {


new Conectar();
}

}
6. Crear un Formulario <Marca> : Guardar en la carpeta “Formularios”

6.1. Objetos:
• Cuadros de Textos:
o txtmar_codigo
o txtmar_descri

• Botones de Comando:
o bNuevo
o bModificar
o bGrabar
o bCancelar
o bEliminar
o bSalir
o bBuscar

6.2. Sub_programas: Private void () Métodos

• Método para Habilitar Botones:

private void h_botones() {


[Link](true);
[Link](false);
[Link](true);
[Link](true);
[Link](false);
[Link](true);
}
• Método para Deshabilitar Botones:
private void d_botones() {
[Link](false);
[Link](true);
[Link](false);
[Link](false);
[Link](true);
[Link](false);
}

• Método para limpiar Textos

public void limpiar_text() {


txtmar_codigo.setText("");
txtmar_descri.setText("");
}
• Método para habilitar cuadros de textos

public void h_text() {


txtmar_descri.setEnabled(true);
}
• Método para deshabilitar cuadros de textos

public void d_text() {


txtmar_descri.setEnabled(false);
}
• Método para generar código

public void gencod(){


try{
[Link] = (Statement) [Link]();
[Link] = (ResultSet) [Link]("select ifnull(max(mar_codigo),0)+1 as
xxx from marca");
[Link]();
txtmar_codigo.setText([Link]("xxx"));
}catch(Exception e){
[Link](null, [Link](), "Error de Conección",
JOptionPane.ERROR_MESSAGE);
}
}

• Método para grabar:

public void grabar() {


try {
String sql = "";
if ([Link]("agregar")) {
sql = "insert into marca(mar_descri)values ('" + txtmar_descri.getText() + "')";
}
if ([Link]("modificar")) {
sql = "update marca set mar_descri='" + txtmar_descri.getText() + "' where
mar_codigo ="+txtmar_codigo.getText();
}
[Link](null, "El registro ha sido grabado");
[Link] = (Statement) [Link]();
[Link](sql);
[Link]();
} catch (SQLException ex) {
[Link](null, [Link](), "Error de Conección",
JOptionPane.ERROR_MESSAGE);
}
}

• Declarar variables tipo públicas e instanciar el programa V_conectar

Códigos a colocar dentro del :public class Marca extends:

public String operacion = null;


V_conectar conn = new V_conectar();

public Marca() {
initComponents();
setLocationRelativeTo(null);
h_botones();
}

Programa Fuente de Objetos: Botones

• Botón Salir
private void bSalirActionPerformed([Link] evt) {
dispose();
}

• Botón Nuevo
private void bNuevoActionPerformed([Link] evt) {
operacion = "agregar";
h_text();
d_botones();
limpiar_text();
gencod();
txtmar_descri.requestFocus();

}
• Botón Grabar

private void bGrabarActionPerformed([Link] evt) {


grabar();
limpiar_text();
d_text();
h_botones();
}

• Botón Modificar

private void bModificarActionPerformed([Link] evt) {


operacion = "modificar";
h_text();
d_botones();
txtmar_descri.requestFocus();
}

• Botón Cancelar

private void bCancelarActionPerformed([Link] evt) {


limpiar_text();
d_text();
h_botones();
}

• Botón Buscar
private void bBuscarActionPerformed([Link] evt) {
new bMarca(null,true).setVisible(true);//llama al buscador
String vcod1 = [Link];
String vnom1 = [Link];
if ([Link]()){
return;

}else{
txtmar_codigo.setText(vcod1);
txtmar_descri.setText(vnom1);
}
}

• Botón Eliminar

private void bEliminarActionPerformed([Link] evt) {


try {
int mensaje = [Link](this, "Desea Borrar?" +
txtmar_descri.getText(), "Confirmar", JOptionPane.YES_NO_OPTION);
if (mensaje == JOptionPane.YES_OPTION) { //si quiere eliminar
[Link] = (Statement) [Link]();
[Link]("delete from marca where mar_codigo=" +
txtmar_codigo.getText());
[Link](null, "El registro ha sido borrado");
}
limpiar_text();

} catch (Exception e) {
[Link](null, [Link](), "Error de Conección",
JOptionPane.ERROR_MESSAGE);
}
}

Validación campos vacíos: Cuadros de Textos

• Objeto: txtmar_descri
• Evento: ActionPerformed

private void txtmar_descriActionPerformed([Link] evt) {


if (txtmar_descri.getText().equals("")){
[Link](null, "La Descripcion no puede estar vacia","Error",
JOptionPane.ERROR_MESSAGE);
}else{
[Link]();
}

}
7. Crear un Formulario de Diálogo <bMarca> : Guardar en la carpeta “Formularios”

7.1. Objetos:
• JDialogForm
• Cuadros de Textos:
o Name: txtnombre
o Name: txtcodigo
o Name: txtdescrip
• Grilla o Tabla:
o Name: t
o Table contents:
▪ Columns count = 2
▪ Rows count = 0
▪ Title:
• Código: Pref. Width = Default, Min. Width = Default
• Descripción: Pref. Width = 15, Min. Width = 150

7.2. Fuente:
• En la clase Principal: public class bMarca extends [Link]
private int band = 0;
private int ab = 0;
private int posreg = 0;
static String vcod = "";
static String vnom = "";
[Link] m;//crear tabla o cursor para la grilla
V_conectar conn = new V_conectar();

• En el constructor: public bMarca(){}

public bMarca([Link] parent, boolean modal) {


super(parent, modal);
initComponents();
setLocationRelativeTo(null);
m = ([Link])[Link](); //conecta el cursor con la grilla t
carga_grilla();
[Link]();

• Subprogramas: Métodos
• Método para cargar la grilla

public void carga_grilla(){

try{
[Link] = (Statement) [Link]();
[Link] = (ResultSet) [Link]("select * from marca order by
mar_codigo");
if ([Link]()){
do{
[Link](new
Object[]{[Link]("mar_codigo"),[Link]("mar_descri")});
}while([Link]());
}
}catch(SQLException ex){
[Link](null,"Error al cargar los datos","Error",
JOptionPane.INFORMATION_MESSAGE);
dispose();
}

• Método para filtrar la grilla

private void filtrar_grilla(){


[Link](0);//limpiar grilla
try{
[Link] = (Statement) [Link]();
[Link] = (ResultSet) [Link]("select * from marca where mar_descri
like '%"+[Link]()+"%' order by mar_codigo");
if ([Link]()){
do{
[Link](new
Object[]{[Link]("mar_codigo"),[Link]("mar_descri")});
}while([Link]());
}
}catch(SQLException ex){
[Link](null,"Error al cargar los datos","Error",
JOptionPane.INFORMATION_MESSAGE);
dispose();
}
}

• Método para elegir un registro de la grilla:

private void eligio(){


posreg = [Link]();
[Link]([Link]([Link](posreg, 0)));
[Link]([Link]([Link](posreg, 1)));
}

• Eventos de Objetos:
o Txtnombre:

private void txtnombreKeyPressed([Link] evt) {


filtrar_grilla();
}

private void txtnombreKeyReleased([Link] evt) {


filtrar_grilla();
if([Link]()==KeyEvent.VK_ENTER || [Link]()==KeyEvent.VK_TAB){
[Link]().setSelectionInterval(0, 0);//se posiciona en la fila que coincida y
le envia enter en la tabla
[Link]();
}
}

o Tabla o Grilla: t

private void tFocusGained([Link] evt) {


eligio();//llama al método eligio para elegir el registro
}

private void tFocusLost([Link] evt) {


eligio();
}

private void tKeyPressed([Link] evt) {


if([Link]()== KeyEvent.VK_ENTER){
vcod = [Link]();
vnom = [Link]();
dispose();
}
}
private void tMouseClicked([Link] evt) {
eligio();
}

También podría gustarte