É isso ai kara! Certinho.
Só fica de olha pra não passar nenhuma referência de UsuarioTela para RepositorioUsuario, e não deixar nenhum import nas classes que não sejam relativas a o que elas fazem. exemplo:
Não "deixe que a classe UsuarioTela sabia" que existe a classe java.sql.Connection, por exemplo.
A única coisa (mas faz primeiro esses seus testes assim, entende como funciona e depois), faça uma classe só com as regras de negócio, exemplo de uma "linha de raciocionio":
A classe UsuarioTela:
public class UsuarioTela {
public void excluirUsuario() {
try {
int codigo = Integer.parseInt(JOptionPane.showInputDialog("Informe o codigo do usuario"));
UsuarioBusiness b = new UsuarioBusiness();
b.excluir(codigo);
} catch(NumberFormatException e) {
JOptionPane.showMessageDialog(null, "Informe um numero!!!");
} catch(Exception e) {
JOptionPane.showMessageDialog(null, e.getMessage());
}
}
}
O que ela fez??? Pedio o codigo do usuário, viu se é um numero ou não, chamou a classe de negocio.
E a classe de negocio:
public class UsuarioBusiness {
public void excluir(int codigo) throws Exception {
if (codigo > 0 ) {
RepositorioUsuario r = new RepositorioUsuario();
e.excluir(codigo);
} else {
throw new Exception("Informe um codigo válido");
}
}
}
Sakou?? Mas deixa essa pra depois.
(o exemplo ficou bemmm pobre, mas deu pra sacar como vai funcionar depois sua camada de regras de negocio, neh?!)
Falows