Banco de dados + DAO

Ae galera blz? Estou realizando uns testes para um projeto e nele estou usando uma Interface e as classes DAO.
O problema esta quando tento enviar um objeto para a DAO inserir no banco, enviando variaveis ele funciona normal, o problema esta mesmo na hora de enviar os objetos.
Segue as 5 classes que existem (Conexao, Interface, ClienteDAO, Cliente, Main)

Conexao.java

[code]package Conexao;

//import com.mysql.jdbc.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Connection;

public class Conexao {
public Connection con = null;
String res;
String server = “localhost:3306”;
String db = “clientesBD”;
String user = “root”;
String pass = “”;
// ":mysql://localhost:3306/bancoexemplo?user=root&password="
public String url = “JDBC:mysql://” + server + “/” + db + “?user=” + user + “&password=” + pass;

public void conecta() throws SQLException, ClassNotFoundException{
    //Carrega o driver        
    String driver = "com.mysql.jdbc.Driver";
    Class.forName(driver);
    //Conecta o BD
    con = (Connection) DriverManager.getConnection(url);
    System.out.print("Conectou");
}

}
[/code]

Interface.java

[code]package Conexao;

public interface Interface {

public void insere(Object obj);
public void busca(Object obj);
public void altera(Object obj);
public void exclui(Object obj);

}
[/code]

ClienteDAO.java

[code]package DAO;

import Conexao.Conexao;
import com.mysql.jdbc.PreparedStatement;
import java.sql.SQLException;

public class ClienteDAO extends Conexao{

public void insere(Object obj) throws SQLException {
    PreparedStatement pstm;
    pstm = (PreparedStatement) con.prepareStatement("INSERT INTO disciplinas(coddisciplina,descricao) VALUES(?,?);");
    pstm.setObject(1, obj);

}

public void busca(Object obj) {
    throw new UnsupportedOperationException("Not supported yet.");
}

public void altera(Object obj) {
    throw new UnsupportedOperationException("Not supported yet.");
}

public void exclui(Object obj) {
    throw new UnsupportedOperationException("Not supported yet.");
}

}
[/code]

Cliente.java

[code]package primeiroprojetocombd;

import Conexao.Conexao;
import DAO.ClienteDAO;
import java.sql.SQLException;
import javax.swing.JOptionPane;

public final class Cliente extends Conexao{
private int id;
private String nome;
private float cpf;

public Cliente(int id, String nome, float cpf){
    setId(id);
    setNome(nome);
    setCpf(cpf);
}


public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public String getNome() {
    return nome;
}

public void setNome(String nome) {
    this.nome = nome;
}

public float getCpf() {
    return cpf;
}

public void setCpf(float cpf) {
    this.cpf = cpf;
}


public void inserir() throws SQLException{
    ClienteDAO cd = new ClienteDAO();
    Cliente c = new Cliente(id,nome,cpf);

    int iId = 1;
    float iCpf = 3330580;
    String iNome = "Jao Balao";

    c.setId(iId);
    c.setCpf(iCpf);
    c.setNome(iNome);
    JOptionPane.showMessageDialog(null,iId + " " + iCpf + " " + iNome);
    JOptionPane.showMessageDialog(null,c);
    cd.insere(c);

    JOptionPane.showMessageDialog(null,c);

}

}
[/code]

Main.java


package primeiroprojetocombd;

import java.sql.SQLException;

public class Main {

    
    public static void main(String[] args) throws SQLException, ClassNotFoundException {
        Conexao.Conexao con = new Conexao.Conexao();
        con.conecta();

        Cliente c = new Cliente(id, nome, cpf); //ele acusa um erro aqui, diz que não consegue instanciar!

        c.inserir();

    }

}

Alguma sugestão?
vlw galera!

meu amigo vc precisa de um curso Java.
De boa mesmo.
mas vou tentar te ajudar:


//tira isto aqui
 Cliente c = new Cliente(id, nome, cpf); //ele acusa um erro aqui, diz que não consegue instanciar!  

//e coloca isto 
 //nao recomendo cpf como float mas...
 Cliente c = new Cliente(1, "Seu nome" ,  123123123 ); //vc precisa passar atributos do tipo que vc criou o construtor 

bom isto ai é o basicão. Acho melhor vc procurar aulas mesmo ok.

Qdo vc usa jdb vc ainda fica preso a linguagem relacional do banco de dados

[code]
public void insere(Object obj) throws SQLException {
PreparedStatement pstm;
pstm = (PreparedStatement) con.prepareStatement(“INSERT INTO disciplinas(coddisciplina,descricao) VALUES(?,?);”);
pstm.setObject(1, obj);

}  [/code]

Vc precisa setar os parametros que vc declarou com “?” na sua “StringQuery”, um pra cada “?”, com seus determinados tipos.

public void insere(Cliente clientj) throws SQLException { PreparedStatement pstm; pstm = (PreparedStatement) con.prepareStatement("INSERT INTO disciplinas(coddisciplina,descricao) VALUES(?,?);"); //tablea cliente ou disciplina? pstm.setInt(1, client.getId()); pstm.setString(1, client.getNome()); pstm.setFloat(1, client.getCpf()); (...) }

e por aí vai… tem bastante tutorial por aí de JDBC
So veja se esta inserindo na tebla certa…

Olá, você pode dar uma olhada nesta apostila que vai te ajudar bastante:

http://www.caelum.com.br/download/caelum-java-web-fj21.pdf

Att,
André Dalcin