problema con la insercion a la BD

Alejanadro Caceres
06 de Junio del 2011
Hola a todos tengo una clase que es un formulario de inserción de datos, la idea es que este formulario por medio de un botón me envié los datos y me los inserte en una base de datos. Por ende tengo la clase de inserción en la base de datos MySQL. esta clase si la ejecuto me inserta perfectamente pero ahora deseo llamarla en el formulario para que por medio del boton me inserte pero validando los campos del formulario.
Dejo los codigos de las dos clases para tener una mejor ayuda


import java.awt.Color;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import java.sql.*;
import java.util.Hashtable;

public class formulario{

private double nota;
private int in=0;
private int cll=0;
private int clw=0;
private String imprimir="";
private Statement stm;

public formulario(){
JFrame frame= new JFrame("Estadisticas Saber Pro");

Panel panel=new Panel();
panel.setLayout(null);
panel.setBounds(0,0,450,750);
panel.setBackground(Color.GRAY);

frame.setSize(450, 750);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);

Label txidalum=new Label("ID Alumno");
txidalum.setBounds(50, 60, 100, 20);

final TextField idalum=new TextField("");
idalum.setBounds(250, 60, 100, 20);

Label txcarrera=new Label("Carrera");
txcarrera.setBounds(50, 120, 100, 20);

final Choice carrera=new Choice();
carrera.add("");
carrera.add("Tecnica");
carrera.add("Tecnologica");
carrera.setBounds(250,120, 100,20);

Label txfacultad=new Label("Facultad");
txfacultad.setBounds(50, 180, 100, 20);

final Choice facultad=new Choice();
facultad.add("");
facultad.add("Ingenierias");
facultad.add("NTIC");
facultad.setBounds(250,180, 100,20);

Label txcompon=new Label("Componentes");
txcompon.setBounds(50, 240, 100, 20);

final Choice compon=new Choice();
compon.add("");
compon.add("Basicos");
compon.add("Social");
compon.add("Programacion");
compon.add("Matematicas");
compon.setBounds(250,240, 100,20);

Label txpunta=new Label("Puntaje");
txpunta.setBounds(50, 300, 100, 20);

final TextField punta=new TextField("");
punta.setBounds(250, 300, 100, 20);

JButton enviar=new JButton("Calcular");
enviar.setBounds(50, 340, 100, 50);

JButton borrar=new JButton("Cancelar");
borrar.setActionCommand("salir");
borrar.setBounds(250, 340, 100, 50);

JButton ins=new JButton("Insertar");
ins.setBounds(50, 520, 100, 50);

Label txlost=new Label("Debilidad");
txlost.setBounds(50, 420, 100, 20);

final TextField lost=new TextField("0");
lost.setBounds(250, 420, 100, 20);

Label txwin=new Label("Fortaleza");
txwin.setBounds(50, 480, 100, 20);

final TextField win=new TextField("0");
win.setBounds(250, 480, 100, 20);

panel.add(txidalum);
panel.add(idalum);
panel.add(txcarrera);
panel.add(carrera);
panel.add(txfacultad);
panel.add(facultad);
panel.add(txcompon);
panel.add(compon);
panel.add(txpunta);
panel.add(punta);
panel.add(txlost);
panel.add(lost);
panel.add(txwin);
panel.add(win);
panel.add(enviar);
panel.add(borrar);
panel.add(ins);
frame.add(panel);

frame.setVisible(true);

frame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent we){
System.exit(0);
}
}
);

enviar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
in=in+1;

//nota= Integer.parseInt(cali.getText());
nota=Double.parseDouble(punta.getText());
JOptionPane.showMessageDialog(null,"ID Alumno "+idalum.getText() +"nn"+"Carrera "+carrera.getSelectedItem()+"nn"+"Facultad "+facultad.getSelectedItem()+"nn"+"Componentes "+compon.getSelectedItem());

if(0.9