Problemas com botão

Boa noite! Estou fazendo um projeto e cara hora uma coisa sai errado ¬¬’

Esse meu programa estava funcionando usando o “banco de dados” access. E quando eu passei para MySQL, o botão não funciona! Oo (como???)
Caras, eu já procurei entender, mas juro que não consegui. Se vocês enxergarem alguma coisa que eu não vi ai, por favor me avisem.

Abraços.

<code>

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.;
import java.sql.
;
import java.lang.*;

import javax.swing.*;

public class chatterbot extends JFrame implements ActionListener
{
private static Connection connection;

int contador = 0;
JLabel escreva;
JButton ok;
static JTextField linha;
static TextArea texto;

public chatterbot()
{
	
	JFrame frame = new JFrame("Chatter Teste");
	frame.setSize(500,300);
	frame.setLocation(400,200);
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.setResizable(false);
	
	escreva = new JLabel("Escreva aqui:");
	escreva.setLocation(20,220);
	escreva.setSize(100,30);
    
	linha = new JTextField ("");
	linha.setLocation(100,225);
	linha.setSize(300,20);
	        		
	texto = new TextArea ("",5,40,1);
	texto.setLocation(10,10);
	texto.setSize(450,180);
	texto.setEditable(false);

	
	ok = new JButton("ok");
	ok.setLocation(420,210);
	ok.setSize(50,50);
			
	
	frame.getContentPane().setLayout(null);
	frame.getContentPane().add(escreva);
	frame.getContentPane().add(linha);
	frame.getContentPane().add(texto);
    frame.getContentPane().add(ok);
	
	frame.show();
}

public static void FazConexao() 
{

	System.out.println("Vai fazer a conexão");

	// O URL que especifica o banco de dados chatbot ao qual
	// esse programa se conecta, utilizando JDBC para conectar a um
	// banco de dados Microsoft ODBC.
	// Carrega o driver para permitir conexão ao banco de dados
	try 
	{
		Class.forName("com.mysql.jdbc.Driver");
		connection = DriverManager.getConnection("jdbc:mysql://localhost/chatbot?user=root&password=vampiro");
		System.out.println("conexão com sucesso");
	 
		
	} 
	catch (ClassNotFoundException cnfex) 
	{
		System.err.println("FALHA NA CONEXÃO DO BANCO DE DADOS");
		cnfex.printStackTrace();
		System.exit(1);
	}
	catch (SQLException sqlex) 
	{
		System.err.println("BANCO DE DADOS NÃO DISPONIVEL");
		sqlex.printStackTrace();
	}
}

public static void main(String args[])
{
	FazConexao();
	new chatterbot();
}	
	
public void actionPerformed(ActionEvent botoes)
{
	Connection con = connection;
	
	if(botoes.getSource()==ok)
	{	
		String frase;
		frase = linha.getText().replaceAll("[?!,.;/|@#$%¨&¬'\"]",""); //Aqui fica todo o tratamento
		frase = frase.replaceAll("[éèêëÉÈÊË]", "e");                  //da sintaxe. 
		frase = frase.replaceAll("[áàäâãÁÀÂÃÄ]", "a"); 
		frase = frase.replaceAll("[úùüûÙÚÛÜ]", "u");
		frase = frase.replaceAll("[óòôõöÓÒÔÕÖ]", "o");
		frase = frase.replaceAll("[íìïîÍÌÎÏ]", "i");
		frase = frase.replaceAll("Çç", "c");
	
		try
        {
			//Aqui teremos o query para pegar a resposta do banco de dados.
		  Statement st = con.createStatement();
		  ResultSet res = st.executeQuery("SELECT resposta FROM pergunta WHERE descricao = '" + frase + "'");
					
		  //Aqui tratarei a resposta caso for positiva.
		  if (res.next())
		  {
			
			  texto.append("-Humano: " + linha.getText());
			  texto.append("\n-Computador: " + res.getString("resposta"));
			  texto.append("\n\n");
			  linha.setText("");
		  }
		 				
	}
        catch (SQLException sqlex) 
       {
			System.out.println("erro sql " + sqlex);
			sqlex.printStackTrace();
		}
		
   	}
	
		
		
		}
}

</code>

O seu programa ele conecta direitinho? Você já tentou inserir alguma coisa no banco de dados, e depois dá o select, bom eu não sei se você fez isso, pois no seu código só tem o comando select. Eu também estou enfrentando problemas para inserir no banco de dados, o meu programa ele tá todo certinho, as camadas, as classes estão instanciadas, mas está dando pau, ele tá gerando uma NullPointerException.

O meu programa conecta direito. Ele só não está organizado nos métodos ainda porque eu não tive tempo, nem saco pra fazer isso. E pelo mesmo motivo eu não tentei fazer o insert ainda, mas eu acredito que não vai funcionar. Porque eu coloquei um System.out.println no momento em que você aperta o botão e ele não da a mensagem. E colocando no método main() depois que instanciei os métodos, a mensagem sai. =s