Tuesday, June 3, 2014

Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError








alright here is my code:








this is from BaseDeDatos:








package Clases;








import java.sql.Connection;







import java.sql.DriverManager;







import java.sql.ResultSet;







import java.sql.Statement;







import Clases.GetandSetDatos;







import Gui.VentanaAgregarDatos;







import Gui.VentVerIngresosMes;







import Gui.VentReporte;







import javax.swing.table.DefaultTableModel;







public class BaseDeDatos {







VentanaAgregarDatos vad = new VentanaAgregarDatos();







VentVerIngresosMes vim = new VentVerIngresosMes();







VentReporte vr = new VentReporte();







private final static String drv = "com.mysql.jdbc.Driver";







private final static String db = "jdbc:mysql://localhost:9999/control_de_gastos";







private final static String UserandPass = "root";







//







private Connection ct;







private Statement st;








public BaseDeDatos(){







try{







Class.forName(drv);







ct = DriverManager.getConnection(db, UserandPass, UserandPass);







st = ct.createStatement();







//vad.setTitle("Conexión exitosa");







System.out.println("Conexion exitosa");







}catch(Exception e){







//vad.setTitle("No se pudo concectar a la base de datos");







System.out.println("No se pudo concectar a la base de datos");







e.printStackTrace();







}







}








public void showAll(){







try{







ResultSet rs = st.executeQuery("SELECT * FROM datos");







while(rs.next()){







DefaultTableModel dtm = (DefaultTableModel) vr.tblDatos.getModel();







Object[] newRow = {rs.getString(2),rs.getString(3)};







dtm.addRow(newRow);







System.out.println(rs.getString(1)+"|"+rs.getStrin g(2)+"|"+rs.getString(3));







}







}catch(Exception e){







System.out.println("Error al realizar la consulta");







}







}








public void añadirDatos(){







try{







st = ct.createStatement();







st.executeUpdate("insert into datos (Mes,Monto) values ('"+vad.cmbMes.getSelectedItem().toString()+"','"+ vad.txtMonto.getText()+"')");







//System.out.println(""+i);







}catch(Exception e){







e.printStackTrace();







}







}








public void obtenerDatos(){







try{







st = ct.createStatement();







st.executeQuery("select Mes,Monto from datos where Mes like "+vim.cmbMes.getSelectedItem().toString()+"and Monto >= "+0);







}catch(Exception e){







e.printStackTrace();







}







}







}








and this is from VentanaAgregarDatos:








package Gui;








import Clases.BaseDeDatos;







import Clases.CreacionDeDatos;







import Clases.GetandSetDatos;







import Clases.GuardarDatos;







import Clases.Lista;







import java.io.File;







import java.sql.Connection;







import java.sql.DriverManager;







import java.sql.ResultSet;







import java.sql.Statement;







import java.util.ArrayList;







import javax.swing.JFileChooser;







import javax.swing.JOptionPane;







import javax.swing.table.DefaultTableModel;








public class VentanaAgregarDatos extends javax.swing.JFrame {








/**







* Creates new form VentanaAgregarDatos







*/







public VentanaAgregarDatos() {







initComponents();







}








public String nombre_archivo;







public int monto;







public String mes;







public String contraseña;







public String condicion;








@SuppressWarnings("unchecked")







// <editor-fold defaultstate="collapsed" desc="Generated Code">







private void initComponents() {








lblIngresarMonto = new javax.swing.JLabel();







txtMonto = new javax.swing.JTextField();







lblMes = new javax.swing.JLabel();







cmbMes = new javax.swing.JComboBox();







lblMontoIngresadoEs = new javax.swing.JLabel();







lblMonto = new javax.swing.JLabel();







btnAgregarDatos = new javax.swing.JButton();







jLabel5 = new javax.swing.JLabel();








setDefaultCloseOperation(javax.swing.WindowConstan ts.DISPOSE_ON_CLOSE);







getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());








lblIngresarMonto.setForeground(new java.awt.Color(151, 178, 203));







lblIngresarMonto.setText("Ingresar Monto:");







getContentPane().add(lblIngresarMonto, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, -1, -1));








txtMonto.addKeyListener(new java.awt.event.KeyAdapter() {







public void keyReleased(java.awt.event.KeyEvent evt) {







txtMontoKeyReleased(evt);







}







});







getContentPane().add(txtMonto, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 10, 113, -1));








lblMes.setForeground(new java.awt.Color(151, 178, 230));







lblMes.setText("Mes:");







getContentPane().add(lblMes, new org.netbeans.lib.awtextra.AbsoluteConstraints(220, 10, -1, -1));








cmbMes.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Setiembre", "Octubre", "Noviembre", "Diciembre" }));







getContentPane().add(cmbMes, new org.netbeans.lib.awtextra.AbsoluteConstraints(250, 10, -1, -1));








lblMontoIngresadoEs.setForeground(new java.awt.Color(151, 178, 230));







lblMontoIngresadoEs.setText("El monto ingresado es:");







getContentPane().add(lblMontoIngresadoEs, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 40, -1, -1));








lblMonto.setFont(new java.awt.Font("Tahoma", 0, 70)); // NOI18N







lblMonto.setForeground(new java.awt.Color(151, 178, 230));







lblMonto.setText("0");







getContentPane().add(lblMonto, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 60, -1, 70));








btnAgregarDatos.setBackground(new java.awt.Color(204, 0, 51));







btnAgregarDatos.setForeground(new java.awt.Color(255, 255, 255));







btnAgregarDatos.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/btn_agregar3.jpg"))); // NOI18N







btnAgregarDatos.addActionListener(new java.awt.event.ActionListener() {







public void actionPerformed(java.awt.event.ActionEvent evt) {







btnAgregarDatosActionPerformed(evt);







}







});







getContentPane().add(btnAgregarDatos, new org.netbeans.lib.awtextra.AbsoluteConstraints(90, 160, 150, 40));








jLabel5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/agregar_datos2.jpg"))); // NOI18N







getContentPane().add(jLabel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 340, -1));








pack();







}// </editor-fold>








GetandSetDatos gasd = new GetandSetDatos();;







CreacionDeDatos cdd = new CreacionDeDatos();







Lista al = new Lista();







GuardarDatos gd = new GuardarDatos();







BaseDeDatos bdd = new BaseDeDatos();








private void btnAgregarDatosActionPerformed(java.awt.event.Acti onEvent evt) {







//







monto = Integer.parseInt(txtMonto.getText());







mes = cmbMes.getSelectedItem().toString();







//







gasd.setMontoIngresado(monto);







gasd.setMes(mes);







//







cdd.montoTotal(0);







//







bdd.añadirDatos();







System.out.println(""+gasd.getMes());







System.out.println(""+gasd.getMontoIngresado());







}








private void txtMontoKeyReleased(java.awt.event.KeyEvent evt) {







//







actualizarLabel();







}








public void actualizarLabel(){







if(txtMonto.getText() != null){lblMonto.setText(""+txtMonto.getText());}els e{lblMonto.setText("0");}







}








/**







* @param args the command line arguments







*/







public static void main(String args[]) {







/* Set the Nimbus look and feel */







//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">







/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.







* For details see How to Set the Look and Feel (The Java™ Tutorials > Creating a GUI With JFC/Swing > Modifying the Look and Feel)







*/







try {







for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {







if ("Windows".equals(info.getName())) {







javax.swing.UIManager.setLookAndFeel(info.getClass Name());







break;







}







}







} catch (ClassNotFoundException ex) {







java.util.logging.Logger.getLogger(VentanaAgregarD atos.class.getName()).log(java.util.logging.Level. SEVERE, null, ex);







} catch (InstantiationException ex) {







java.util.logging.Logger.getLogger(VentanaAgregarD atos.class.getName()).log(java.util.logging.Level. SEVERE, null, ex);







} catch (IllegalAccessException ex) {







java.util.logging.Logger.getLogger(VentanaAgregarD atos.class.getName()).log(java.util.logging.Level. SEVERE, null, ex);







} catch (javax.swing.UnsupportedLookAndFeelException ex) {







java.util.logging.Logger.getLogger(VentanaAgregarD atos.class.getName()).log(java.util.logging.Level. SEVERE, null, ex);







} catch(Exception e){







e.printStackTrace();







}







//</editor-fold>








/* Create and display the form */







java.awt.EventQueue.invokeLater(new Runnable() {







public void run() {







new VentanaAgregarDatos().setVisible(true);







}







});







}








// Variables declaration - do not modify







private javax.swing.JButton btnAgregarDatos;







public javax.swing.JComboBox cmbMes;







private javax.swing.JLabel jLabel5;







private javax.swing.JLabel lblIngresarMonto;







private javax.swing.JLabel lblMes;







private javax.swing.JLabel lblMonto;







private javax.swing.JLabel lblMontoIngresadoEs;







public javax.swing.JTextField txtMonto;







// End of variables declaration







}















No comments:

Post a Comment