Duvida na utlização do padrão MVC

Galera, estou tendo problemas para utilizar o padrão MVC em minhas aplicações.Tipo, eu tenho minha camada de apresentação que é uma classe que cria a interface com o usuário, por exemplo uma tela de cadastro com vários campos pra inserção dos dados, e tenho uma classe que contem toda lógica da aplicação que realiza a inserção, exclusão e outras operações, e tenho uma classe só de conexão com o banco de dados.
Agora vem a pergunta. Como eu faço, por exemplo, pra através da classe que contem a lógica da aplicação, pegar o dados inseridos nos campos da classe de interface com o usuário e mandar pro banco de dados?
Agradeço quem puder me ajudar, se alguem puder mostrar no código que escrevi onde estão os meus erros serei muito grato.
Ai vão os códigos(é um exmplo bem básico)

Classe Implement
    import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import javax.swing.*;

public class Implement {
	private Apresent fields;
	public Connection conect;
	public Statement stmt;
	
	public Implement(Apresent f, Connection c){
	conect = c;
	fields = f;
		
	}	
	public void Insert()
	{
	try{
	stmt = conect.createStatement();
	stmt.executeUpdate("INSERT INTO cadastro (" +
               "nome" + ") VALUES ('" +
               fields.nome.getText() + "')");
		}
	catch (Exception e)
		{
			System.out.println(e.toString());
			System.exit(0);
		}
		
	}

}

Classe Apresent

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Apresent extends JFrame implements ActionListener{
		public JLabel l_nome;
		public JTextField nome;
		public JButton inserir;
		public Implement imp;
		
		public Apresent(){
			
		Container c = getContentPane();
		c.setLayout(null);
		setResizable(false);
		
		l_nome = new JLabel("Nome:");
		c.add(l_nome);
		
		nome = new JTextField();
		c.add(nome);
		
		inserir = new JButton("Inserir");
		inserir.addActionListener(this);
		c.add(inserir);
		
		Insets insets = c.getInsets();
        l_nome.setBounds(25 + insets.left, 25 + insets.top, 75, 20);
        nome.setBounds(90 + insets.left, 25 + insets.top, 180, 20);
        inserir.setBounds(25 + insets.left, 50 + insets.top, 75, 20);
	}
	
	    public void actionPerformed(ActionEvent e) {
   		
   		if(e.getSource()==inserir)
   	    imp.Insert();
   		
   	}
	    
		public static void main(String args[])
    {

      	Apresent window = new Apresent();       	
        Insets insets = window.getInsets();
        window.setTitle("Apresentação");
        window.setBounds(200 + insets.left, 200 + insets.top,450,200);
        window.setVisible(true);
    	
    	Apresent app = new Apresent();

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

Classe conecta_mysql

[code]
import java.sql.;
import javax.swing.
;

public class conecta_mysql {
public Connection con;

public conecta_mysql()
{
try
{
Class.forName(“org.gjt.mm.mysql.Driver”);
con = DriverManager.getConnection(“jdbc:mysql://localhost/teste”, “”, “”);
}
catch (Exception e)
{
System.out.println(e.toString());
System.exit(0);
}
}
}[/code]

Na classe Implement a instrucao sql não seria

INSERT INTO cadastro (nome) VALUES (' " + fields.nome.getText() + " ')"

???

É comum que, nesse tipo de padrão, exista uma classe que encapsule os dados. No struts, por exemplo, existe o ActionForm. O que ele faz é encapsular os campos do formulário e possui dois métodos, chamados validate(), que deve ser implementado para validar os dados e reset() que “zera” os dados ao seu estado original.

No esquema web, quando você clica submit, a requisição é enviada para o controlador, que passa os dados do formulário para esse objeto e chama o método validate. Após isso, se validate() retornar true, ele chama a classe reponsável pela lógica da aplicação, que no struts é chamada de Action. Ela recebe como parametro o objeto formulario com os campos preenchidos.

A filosofia para uma aplicação swing é bem similar. No botão que confirma os dados, carregue um objeto com os campos preenchidos e passe ele como referencia para a sua classe controladora. Ela deve fazer alguma validação nele e repassar a chamada para o modelo, que sabe o que fazer com ela.

Não passe a propria Apresent para a classe Implement, crie esse objeto. Veja que nesse esquema você ainda não possui um controlador. É exatamente ele que “liga” as outras duas camadas.

O Elvis, ainda to apanhando pra aplicar esse padrão da maneira como vc disse, será que vc teria um exemplo bem básico de como fazer isso?Poderia ser utilizando este mesmo código que postei .
Desde já agradeço!!!

Claro. Só que talvez leve um tempinho. To estudando pra certificação Java. (prova dia 24/01/2003, posto o resultado aqui ASAP).
Se ninguém responder eu posto aqui. Talvez leve 1 a 2 dias blz?

Ola amigo,
Se quiser informções de como implementar o MVC ou outros Patterns
entre em:
www.bruceeckel.com

Mais conteúdo sobre MVC recomendo acessar este link: http://www.guj.com.br/posts/list/129277.java
Vou adicionar este tópico como referência na lista de links sobre MVC que estão na primeira postagem do link que estou recomendando.
Espero ter colaborado! :wink: