POO2_U3_EA_RONM
Short Description
Descripción: Evidencia de aprendizaje Programaciòn orientada a objetos...
Description
Universidad Abierta y Distancia de México Asignatura: Programación Orientado a objetos II Quinto cuatrimestre Alumno: Roberto Nieto Morales Matricula: al13502595
Evidencia de aprendizaje de la Tercera Unidad.
a
El uso programa hace uso de componentes gráficos.
b
El programa cuenta con manejo de eventos.
Instrucciones:
En esta actividad mi objetivo es crear una base de datos para un control escolar en el ingreso de alumnos, se crea una base de datos en un manejador de bases de datos postgresql con el nombre de Escuela, y de igual manera se crea un una tabla con el objeto alumnos con sus atributos que son matricula, nombre, semestre y carrera. En dicha tabla habrá un control de ingresos de alumnos, la llave primaria es matricula la cual acepta enteros, asimismo hay un control del semestre cursado y el nombre de la carrera, no olvidando que también lleva el nombre del alumno, son variables String.
En realidad la creación de dicha tabla fue sencilla ya que para que se manipule la creación de esta, se utilizan los lenguajes SQL (DDL YDML).
Posteriormente se crea un programa en Netbeans, que se lleva a cabo de igual manera una interfaz gráfica de una tabla con los mismos atributos de la tabla realizada en postgresql, para que al último se manipule desde el programa de netbeans, la base de datos creada en postgresql.
a
Se entrega el código con la sentencia de creación de la BD con la que está ligado el programa
Database: escuela -- DROP DATABASE escuela; CREATE DATABASE escuela WITH OWNER = postgres ENCODING = 'UTF8' TABLESPACE = pg_default LC_COLLATE = 'Spanish_Spain.1252' LC_CTYPE = 'Spanish_Spain.1252' CONNECTION LIMIT = -1;
b
El
Se entrega el código con las sentencias de creación de tablas de bases de datos con la que está ligado el programa
- Table: alumnos -- DROP TABLE alumnos; CREATE TABLE alumnos ( matricula numeric NOT NULL, nombre text, semestre text, carrera text, CONSTRAINT alumnos_pkey PRIMARY KEY (matricula) ) WITH ( OIDS=FALSE ); ALTER TABLE alumnos OWNER TO postgres;
desarrollo de la creación de mi código en el programa en netbeans está en seguida ya que en el mismo se crea la interfaz gráfica, la conexión a la base de datos postgresql, y por último se manipula con sentencias Statement correr mi archivo me da resultados satisfactorios.
El programa realiza una correcta conexión con la base de datos
El programa incluye sentencias de manipulación de datos que funcionan
Ilustración 1SELECT*FROM alumnos
Ilustración 2INSERT INTO alumnos VALUES('','','','')
El programa muestra respuestas del procesamiento y consultas correcto * * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */
package escuela; import java.util.ArrayList; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;
/** * * @author Roberto */ public class JFalumnos extends javax.swing.JFrame { ArrayListlistaAlumnos=new ArrayList(); /** * Creates new form JFalumnos */ public JFalumnos() { initComponents(); } public void limpiarCampos(){ this.jTmatricula.setText(""); this.jTnombre.setText(""); this.jTsemestre.setText(""); this.jTcarrera.setText(""); this.jLinfo.setText("");
} public void inicializar(){ limpiarCampos();
}
/** * This method is called from within the constructor to initialize the form. * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // private void initComponents() {
jLtitulo = new javax.swing.JLabel(); jLmatricula = new javax.swing.JLabel(); jLnombre = new javax.swing.JLabel(); jLsemestre = new javax.swing.JLabel(); jLcarrera = new javax.swing.JLabel(); jTmatricula = new javax.swing.JTextField(); jTnombre = new javax.swing.JTextField(); jTsemestre = new javax.swing.JTextField(); jTcarrera = new javax.swing.JTextField(); jBguardar = new javax.swing.JButton(); jBlimpiar = new javax.swing.JButton(); jBcerrar = new javax.swing.JButton(); jLinfo = new javax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLtitulo.setText("INGRESO DE ALUMNOS");
jLmatricula.setText("matricula");
jLnombre.setText("Nombre");
jLsemestre.setText("Semestre");
jLcarrera.setText("Carrera");
jBguardar.setText("Guardar"); jBguardar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jBguardarActionPerformed(evt); } });
jBlimpiar.setText("Limpiar"); jBlimpiar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jBlimpiarActionPerformed(evt); } });
jBcerrar.setText("Cerrar"); jBcerrar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jBcerrarActionPerformed(evt); } });
jLinfo.setText("INFORMACION");
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup() .addGap(195, 195, 195) .addComponent(jLtitulo) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(layout.createSequentialGroup() .addGap(80, 80, 80) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jLnombre) .addComponent(jLmatricula) .addComponent(jLsemestre) .addComponent(jLcarrera)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addComponent(jTcarrera, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 108, Short.MAX_VALUE) .addComponent(jTsemestre, javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jTnombre, javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jTmatricula, javax.swing.GroupLayout.Alignment.TRAILING)) .addGap(120, 120, 120)) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jBguardar) .addGap(32, 32, 32) .addComponent(jBlimpiar) .addGap(18, 18, 18) .addComponent(jBcerrar)) .addComponent(jLinfo, javax.swing.GroupLayout.PREFERRED_SIZE, 97, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(132, Short.MAX_VALUE))))
); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(48, 48, 48) .addComponent(jLtitulo) .addGap(33, 33, 33) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLmatricula) .addComponent(jTmatricula, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(37, 37, 37) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLnombre) .addComponent(jTnombre, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(41, 41, 41) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLsemestre) .addComponent(jTsemestre, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(37, 37, 37) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLcarrera) .addComponent(jTcarrera, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(18, 18, 18) .addComponent(jLinfo) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 28, Short.MAX_VALUE) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jBguardar) .addComponent(jBlimpiar) .addComponent(jBcerrar))
.addGap(23, 23, 23)) );
pack(); }//
private void jBguardarActionPerformed(java.awt.event.ActionEvent evt) { try{ int id=Integer.parseInt(this.jTmatricula.getText()); String nombre= jTnombre.getText(); String semestre=jTsemestre.getText(); String carrera=jTcarrera.getText();
alumno t = new alumno(id, nombre,semestre,carrera); this.listaAlumnos.add(t);
this.jLinfo.setText("Alumno ingresado"); }catch(Exception e){ this.jLinfo.setText("Error de Ingreso"); } }
private void jBlimpiarActionPerformed(java.awt.event.ActionEvent evt) { limpiarCampos(); }
private void jBcerrarActionPerformed(java.awt.event.ActionEvent evt) { this.dispose();
}
/**
* @param args the command line arguments */ public static void main(String args[]) throws SQLException, ClassNotFoundException { String driver = "org.postgresql.Driver"; String url = "jdbc:postgresql://localhost:5432/escuela"; String user = "postgres"; String password = "evolucionnieto"; Class.forName(driver); Connection con = DriverManager.getConnection(url,user,password); Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("INSERT INTO alumnos VALUES ('348','BENJAMIN','QUINTO','SOFTWARE');");
while (rs.next()){ System.out.println("matricula " + rs.getString("matricula")); System.out.println("nombre " + rs.getString("nombre")); System.out.println("semestre " + rs.getString("semestre")); System.out.println("carrera" + rs.getString("carrera"));
java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new JFalumnos().setVisible(true); } }); } }
// Variables declaration - do not modify private javax.swing.JButton jBcerrar; private javax.swing.JButton jBguardar; private javax.swing.JButton jBlimpiar;
private javax.swing.JLabel jLcarrera; private javax.swing.JLabel jLinfo; private javax.swing.JLabel jLmatricula; private javax.swing.JLabel jLnombre; private javax.swing.JLabel jLsemestre; private javax.swing.JLabel jLtitulo; private javax.swing.JTextField jTcarrera; private javax.swing.JTextField jTmatricula; private javax.swing.JTextField jTnombre; private javax.swing.JTextField jTsemestre; // End of variables declaration } Conclusión; En realidad estuve confundido y quise hacer un programa que en el mismo, se manejaran varias sentencias a la vez, pero siempre había errores al correr mi programa, así que decidí en el mismo programa hacer cambios de las sentencias y manipularlas y me dieron resultados satisfactorios ya que al correr mi programa mostraba la consulta exacta.
View more...
Comments