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