[Resolvido] Metodo Insert e Update não rodam caso meu JdateChooser esteja vazio

4 respostas
fabio.argenton

Fala galera, segue minha dúvida:

Tenho uma tela de cadastro onde o campo “Finalizacao” é uma Date no banco MySql e no meu Jframe tenho um componente JdateChooser para representá-lo, quero dar alternativa ao usuário em preencher este campo ou apenas deixá-lo em branco, quando preenche ele está funcionando perfeitamente, salva no banco tudo OK, mas se eu deixo o JdateChooser vazio ao clicar em salvar não acontece nada, ou seja, meu Insert ou Update não funciona. Obs.: No banco este campo NÃO é obrigatório (Aceita null).

Segue apenas os trechos de código que está atrelado a minha dúvida:

Pacote bean (Entidade):

public class Rdi {

    int RDI;
    Date Abertura;
    Date Finalizacao; //Aqui o Date que está dando problema
    String Status;
    Boolean Envio_999;
    Boolean Gera_NQ;
    String Claim;
    String Processo;
    String Gabarito;
    String BIN;
    String Material;
    int Quantidade;
    String Responsavel;
    String Setor;
    String Causa_Raiz;
    String Erro_Identificado;
    String Analise_Acao;
    Boolean Contagem_Saldo;
    Boolean Recontagem;
    Boolean Varredura_FGI;
    Boolean Auditoria_LT24;
    Boolean Varredura_RW_NCM;
    Boolean Varredura_Inbound;
    Boolean Auditoria_Entrada;
    Boolean Varredura_Agendamento;
    Boolean Auditoria_Delivery;
    Boolean Auditoria_Saida;
    Boolean Revezamento;

    //Método para exibir tudo que tem na classe
    @Override
    public String toString() {
        return "Rdi{" + "RDI=" + RDI + ", Abertura=" + Abertura + ", Finalizacao=" + Finalizacao + ", Status=" + Status + ", Envio_999=" + Envio_999 + ", Gera_NQ=" + Gera_NQ + ", Claim=" + Claim + ", Processo=" + Processo + ", Gabarito=" + Gabarito + ", BIN=" + BIN + ", Material=" + Material + ", Quantidade=" + Quantidade + ", Responsavel=" + Responsavel + ", Setor=" + Setor + ", Causa_Raiz=" + Causa_Raiz + ", Erro_Identificado=" + Erro_Identificado + ", Analise_Acao=" + Analise_Acao + ", Contagem_Saldo=" + Contagem_Saldo + ", Recontagem=" + Recontagem + ", Varredura_FGI=" + Varredura_FGI + ", Auditoria_LT24=" + Auditoria_LT24 + ", Varredura_RW_NCM=" + Varredura_RW_NCM + ", Varredura_Inbound=" + Varredura_Inbound + ", Auditoria_Entrada=" + Auditoria_Entrada + ", Varredura_Agendamento=" + Varredura_Agendamento + ", Auditoria_Delivery=" + Auditoria_Delivery + ", Auditoria_Saida=" + Auditoria_Saida + ", Revezamento=" + Revezamento + '}';
    }

    //Construtor Vazio
    public Rdi() {
    }

    //Contrutor que recebe parametros
    public Rdi(Date Abertura, Date Finalizacao, String Status, Boolean Envio_999, Boolean Gera_NQ, String Claim, String Processo, String Gabarito, String BIN, String Material, int Quantidade, String Responsavel, String Setor, String Causa_Raiz, String Erro_Identificado, String Analise_Acao, Boolean Contagem_Saldo, Boolean Recontagem, Boolean Varredura_FGI, Boolean Auditoria_LT24, Boolean Varredura_RW_NCM, Boolean Varredura_Inbound, Boolean Auditoria_Entrada, Boolean Varredura_Agendamento, Boolean Auditoria_Delivery, Boolean Auditoria_Saida, Boolean Revezamento) {
        //this.RDI = RDI;
        this.Abertura = Abertura;
        this.Finalizacao = Finalizacao;
        this.Status = Status;
        this.Envio_999 = Envio_999;
        this.Gera_NQ = Gera_NQ;
        this.Claim = Claim;
        this.Processo = Processo;
        this.Gabarito = Gabarito;
        this.BIN = BIN;
        this.Material = Material;
        this.Quantidade = Quantidade;
        this.Responsavel = Responsavel;
        this.Setor = Setor;
        this.Causa_Raiz = Causa_Raiz;
        this.Erro_Identificado = Erro_Identificado;
        this.Analise_Acao = Analise_Acao;
        this.Contagem_Saldo = Contagem_Saldo;
        this.Recontagem = Recontagem;
        this.Varredura_FGI = Varredura_FGI;
        this.Auditoria_LT24 = Auditoria_LT24;
        this.Varredura_RW_NCM = Varredura_RW_NCM;
        this.Varredura_Inbound = Varredura_Inbound;
        this.Auditoria_Entrada = Auditoria_Entrada;
        this.Varredura_Agendamento = Varredura_Agendamento;
        this.Auditoria_Delivery = Auditoria_Delivery;
        this.Auditoria_Saida = Auditoria_Saida;
        this.Revezamento = Revezamento;
    }

    //Get and Set
    public int getRDI() {
        return RDI;
    }

    public void setRDI(int RDI) {
        this.RDI = RDI;
    }

    public Date getAbertura() {
        return Abertura;
    }

    public void setAbertura(Date Abertura) {
        this.Abertura = Abertura;
    }

    public Date getFinalizacao() {
        return Finalizacao;
    }

    public void setFinalizacao(Date Finalizacao) {
        this.Finalizacao = Finalizacao;
    }

    public String getStatus() {
        return Status;
    }

    public void setStatus(String Status) {
        this.Status = Status;
    }

    public Boolean getEnvio_999() {
        return Envio_999;
    }

    public void setEnvio_999(Boolean Envio_999) {
        this.Envio_999 = Envio_999;
    }

    public Boolean getGera_NQ() {
        return Gera_NQ;
    }

    public void setGera_NQ(Boolean Gera_NQ) {
        this.Gera_NQ = Gera_NQ;
    }

    public String getClaim() {
        return Claim;
    }

    public void setClaim(String Claim) {
        this.Claim = Claim;
    }

    public String getProcesso() {
        return Processo;
    }

    public void setProcesso(String Processo) {
        this.Processo = Processo;
    }

    public String getGabarito() {
        return Gabarito;
    }

    public void setGabarito(String Gabarito) {
        this.Gabarito = Gabarito;
    }

    public String getBIN() {
        return BIN;
    }

    public void setBIN(String BIN) {
        this.BIN = BIN;
    }

    public String getMaterial() {
        return Material;
    }

    public void setMaterial(String Material) {
        this.Material = Material;
    }

    public int getQuantidade() {
        return Quantidade;
    }

    public void setQuantidade(int Quantidade) {
        this.Quantidade = Quantidade;
    }

    public String getResponsavel() {
        return Responsavel;
    }

    public void setResponsavel(String Responsavel) {
        this.Responsavel = Responsavel;
    }

    public String getSetor() {
        return Setor;
    }

    public void setSetor(String Setor) {
        this.Setor = Setor;
    }

    public String getCausa_Raiz() {
        return Causa_Raiz;
    }

    public void setCausa_Raiz(String Causa_Raiz) {
        this.Causa_Raiz = Causa_Raiz;
    }

    public String getErro_Identificado() {
        return Erro_Identificado;
    }

    public void setErro_Identificado(String Erro_Identificado) {
        this.Erro_Identificado = Erro_Identificado;
    }

    public String getAnalise_Acao() {
        return Analise_Acao;
    }

    public void setAnalise_Acao(String Analise_Acao) {
        this.Analise_Acao = Analise_Acao;
    }

    public Boolean getContagem_Saldo() {
        return Contagem_Saldo;
    }

    public void setContagem_Saldo(Boolean Contagem_Saldo) {
        this.Contagem_Saldo = Contagem_Saldo;
    }

    public Boolean getRecontagem() {
        return Recontagem;
    }

    public void setRecontagem(Boolean Recontagem) {
        this.Recontagem = Recontagem;
    }

    public Boolean getVarredura_FGI() {
        return Varredura_FGI;
    }

    public void setVarredura_FGI(Boolean Varredura_FGI) {
        this.Varredura_FGI = Varredura_FGI;
    }

    public Boolean getAuditoria_LT24() {
        return Auditoria_LT24;
    }

    public void setAuditoria_LT24(Boolean Auditoria_LT24) {
        this.Auditoria_LT24 = Auditoria_LT24;
    }

    public Boolean getVarredura_RW_NCM() {
        return Varredura_RW_NCM;
    }

    public void setVarredura_RW_NCM(Boolean Varredura_RW_NCM) {
        this.Varredura_RW_NCM = Varredura_RW_NCM;
    }

    public Boolean getVarredura_Inbound() {
        return Varredura_Inbound;
    }

    public void setVarredura_Inbound(Boolean Varredura_Inbound) {
        this.Varredura_Inbound = Varredura_Inbound;
    }

    public Boolean getAuditoria_Entrada() {
        return Auditoria_Entrada;
    }

    public void setAuditoria_Entrada(Boolean Auditoria_Entrada) {
        this.Auditoria_Entrada = Auditoria_Entrada;
    }

    public Boolean getVarredura_Agendamento() {
        return Varredura_Agendamento;
    }

    public void setVarredura_Agendamento(Boolean Varredura_Agendamento) {
        this.Varredura_Agendamento = Varredura_Agendamento;
    }

    public Boolean getAuditoria_Delivery() {
        return Auditoria_Delivery;
    }

    public void setAuditoria_Delivery(Boolean Auditoria_Delivery) {
        this.Auditoria_Delivery = Auditoria_Delivery;
    }

    public Boolean getAuditoria_Saida() {
        return Auditoria_Saida;
    }

    public void setAuditoria_Saida(Boolean Auditoria_Saida) {
        this.Auditoria_Saida = Auditoria_Saida;
    }

    public Boolean getRevezamento() {
        return Revezamento;
    }

    public void setRevezamento(Boolean Revezamento) {
        this.Revezamento = Revezamento;
    }
}

Pacote DAO (Responsável pelos métodos):

public class RdiDAO {

    //Método Inserir um registro na tabela Rdi(Insert - "C"RUD)
    public int inserir(Rdi rdi) {
        int ret = 0;
        String sql = "INSERT INTO rdi (Abertura, Finalizacao, Status, Envio_999, Gera_NQ, Claim, Processo, Gabarito, BIN, Material, Quantidade, Responsavel, Setor, Causa_Raiz, Erro_Identificado, Analise_Acao, Contagem_Saldo, Recontagem, Varredura_FGI, Auditoria_LT24, Varredura_RW_NCM, Varredura_Inbound, Auditoria_Entrada, Varredura_Agendamento, Auditoria_Delivery, Auditoria_Saida, Revezamento)"
                + "VALUES( "
                + "'" + rdi.getAbertura() + "', "
                + "'" + rdi.getFinalizacao() + "', " //Aqui onde está dando problema
                + "'" + rdi.getStatus() + "', "
                + "'" + Util.verdadeiroFalso(rdi.getEnvio_999()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getGera_NQ()) + "', "
                + "'" + rdi.getClaim() + "', "
                + "'" + rdi.getProcesso() + "', "
                + "'" + rdi.getGabarito() + "', "
                + "'" + rdi.getBIN() + "', "
                + "'" + rdi.getMaterial() + "', "
                + "'" + rdi.getQuantidade() + "', "
                + "'" + rdi.getResponsavel() + "', "
                + "'" + rdi.getSetor() + "', "
                + "'" + rdi.getCausa_Raiz() + "', "
                + "'" + rdi.getErro_Identificado() + "', "
                + "'" + rdi.getAnalise_Acao() + "', "
                + "'" + Util.verdadeiroFalso(rdi.getContagem_Saldo()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getRecontagem()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getVarredura_FGI()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getAuditoria_LT24()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getVarredura_RW_NCM()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getVarredura_Inbound()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getAuditoria_Entrada()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getVarredura_Agendamento()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getAuditoria_Delivery()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getAuditoria_Saida()) + "', "
                + "'" + Util.verdadeiroFalso(rdi.getRevezamento()) + "' "
                + ")";

        com.mysql.jdbc.Connection conn = ConnectionMySQL.getConnection();
        Statement stmt = null;

        try {
            stmt = conn.createStatement();
            ret = stmt.executeUpdate(sql);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            ConnectionMySQL.close(conn, stmt);
        }
        return ret;
    }

//Metodo para Alterar dados de um registro da tabela Rdi (Update - CR"U"D)
    public int alterar(Rdi rdi) {
        int ret = 0;
        String sql = "UPDATE rdi SET "
                + "Abertura='" + rdi.getAbertura() + "', "
                + "Finalizacao='" + rdi.getFinalizacao() + "', " //Aqui onde está dando problema
                + "Status='" + rdi.getStatus() + "', "
                + "Envio_999='" + Util.verdadeiroFalso(rdi.getEnvio_999()) + "', "
                + "Gera_NQ='" + Util.verdadeiroFalso(rdi.getGera_NQ()) + "', "
                + "Claim='" + rdi.getClaim() + "', "
                + "Processo='" + rdi.getProcesso() + "', "
                + "Gabarito='" + rdi.getGabarito() + "', "
                + "BIN='" + rdi.getBIN() + "', "
                + "Material='" + rdi.getMaterial() + "', "
                + "Quantidade='" + rdi.getQuantidade() + "', "
                + "Responsavel='" + rdi.getResponsavel() + "', "
                + "Setor='" + rdi.getSetor() + "', "
                + "Causa_Raiz='" + rdi.getCausa_Raiz() + "', "
                + "Erro_Identificado='" + rdi.getErro_Identificado() + "', "
                + "Analise_Acao='" + rdi.getAnalise_Acao() + "', "
                + "Contagem_Saldo='" + Util.verdadeiroFalso(rdi.getContagem_Saldo()) + "', "
                + "Recontagem='" + Util.verdadeiroFalso(rdi.getRecontagem()) + "', "
                + "Varredura_FGI='" + Util.verdadeiroFalso(rdi.getVarredura_FGI()) + "', "
                + "Auditoria_LT24='" + Util.verdadeiroFalso(rdi.getAuditoria_LT24()) + "', "
                + "Varredura_RW_NCM='" + Util.verdadeiroFalso(rdi.getVarredura_RW_NCM()) + "', "
                + "Varredura_Inbound='" + Util.verdadeiroFalso(rdi.getVarredura_Inbound()) + "', "
                + "Auditoria_Entrada='" + Util.verdadeiroFalso(rdi.getAuditoria_Entrada()) + "', "
                + "Varredura_Agendamento='" + Util.verdadeiroFalso(rdi.getVarredura_Agendamento()) + "', "
                + "Auditoria_Delivery='" + Util.verdadeiroFalso(rdi.getAuditoria_Delivery()) + "', "
                + "Auditoria_Saida='" + Util.verdadeiroFalso(rdi.getAuditoria_Saida()) + "', "
                + "Revezamento='" + Util.verdadeiroFalso(rdi.getRevezamento()) + "' "
                + "WHERE RDI = " + rdi.getRDI();

        com.mysql.jdbc.Connection conn = ConnectionMySQL.getConnection();
        Statement stmt = null;

        try {
            stmt = conn.createStatement();
            ret = stmt.executeUpdate(sql);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            ConnectionMySQL.close(conn, stmt);
        }
        return ret;
    }

Pacote view (Tela onde contém este componente):

RdiDAO rdiDAO;
    private SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
//Botão Salvar
    private void btnSalvarActionPerformed(java.awt.event.ActionEvent evt) {                                          
        if (txtRDI.getText().equals("")) {
            Rdi rdi = new Rdi();
            rdi.setAbertura(Util.stringToDate(Util.dateToString(txtAbertura.getDate())));
            rdi.setFinalizacao(Util.stringToDate(Util.dateToString(txtFinalizacao.getDate()))); //Aqui onde está dando problema (Quero poder deixar vazio)
            rdi.setStatus(txtStatus.getSelectedItem().toString());
            rdi.setEnvio_999(Util.flag(txtEnvio_999));
            rdi.setGera_NQ(Util.flag(txtGera_NQ));
            rdi.setClaim(txtClaim.getSelectedItem().toString());
            rdi.setProcesso(txtProcesso.getSelectedItem().toString());
            rdi.setGabarito(txtGabarito.getText());
            rdi.setBIN(txtBIN.getText());
            rdi.setMaterial(txtMaterial.getText());
            rdi.setQuantidade(Integer.parseInt(txtQuantidade.getText()));
            rdi.setResponsavel(txtResponsavel.getSelectedItem().toString());
            rdi.setSetor(txtSetor.getSelectedItem().toString());
            rdi.setCausa_Raiz(txtCausa_Raiz.getSelectedItem().toString());
            rdi.setErro_Identificado(txtErro_Identificado.getSelectedItem().toString());
            rdi.setAnalise_Acao(txtAnalise_Acao.getText());
            rdi.setContagem_Saldo(Util.flag(txtContagem_Saldo));
            rdi.setRecontagem(Util.flag(txtRecontagem));
            rdi.setVarredura_FGI(Util.flag(txtVarredura_FGI));
            rdi.setAuditoria_LT24(Util.flag(txtAuditoria_LT24));
            rdi.setVarredura_RW_NCM(Util.flag(txtVarredura_RW_NCM));
            rdi.setVarredura_Inbound(Util.flag(txtVarredura_Inbound));
            rdi.setAuditoria_Entrada(Util.flag(txtAuditoria_Entrada));
            rdi.setVarredura_Agendamento(Util.flag(txtVarredura_Agendamento));
            rdi.setAuditoria_Delivery(Util.flag(txtAuditoria_Delivery));
            rdi.setAuditoria_Saida(Util.flag(txtAuditoria_Saida));
            rdi.setRevezamento(Util.flag(txtRevezamento));

            RdiDAO rdiDAO = new RdiDAO();
            int ret = rdiDAO.inserir(rdi);            
            if (ret > 0) {
                JOptionPane.showMessageDialog(this, "Registro Salvo!");
                carregaRdi();
            }else
            JOptionPane.showMessageDialog(this, "Erro");

        } else {
            Rdi rdi = new Rdi();
            rdi.setRDI(Integer.parseInt(txtRDI.getText()));
            rdi.setAbertura(Util.stringToDate(Util.dateToString(txtAbertura.getDate())));
            rdi.setFinalizacao(Util.stringToDate(Util.dateToString(txtFinalizacao.getDate())));
            rdi.setStatus(txtStatus.getSelectedItem().toString());
            rdi.setEnvio_999(Util.flag(txtEnvio_999));
            rdi.setGera_NQ(Util.flag(txtGera_NQ));
            rdi.setClaim(txtClaim.getSelectedItem().toString());
            rdi.setProcesso(txtProcesso.getSelectedItem().toString());
            rdi.setGabarito(txtGabarito.getText());
            rdi.setBIN(txtBIN.getText());
            rdi.setMaterial(txtMaterial.getText());
            rdi.setQuantidade(Integer.parseInt(txtQuantidade.getText()));
            rdi.setResponsavel(txtResponsavel.getSelectedItem().toString());
            rdi.setSetor(txtSetor.getSelectedItem().toString());
            rdi.setCausa_Raiz(txtCausa_Raiz.getSelectedItem().toString());
            rdi.setErro_Identificado(txtErro_Identificado.getSelectedItem().toString());
            rdi.setAnalise_Acao(txtAnalise_Acao.getText());
            rdi.setContagem_Saldo(Util.flag(txtContagem_Saldo));
            rdi.setRecontagem(Util.flag(txtRecontagem));
            rdi.setVarredura_FGI(Util.flag(txtVarredura_FGI));
            rdi.setAuditoria_LT24(Util.flag(txtAuditoria_LT24));
            rdi.setVarredura_RW_NCM(Util.flag(txtVarredura_RW_NCM));
            rdi.setVarredura_Inbound(Util.flag(txtVarredura_Inbound));
            rdi.setAuditoria_Entrada(Util.flag(txtAuditoria_Entrada));
            rdi.setVarredura_Agendamento(Util.flag(txtVarredura_Agendamento));
            rdi.setAuditoria_Delivery(Util.flag(txtAuditoria_Delivery));
            rdi.setAuditoria_Saida(Util.flag(txtAuditoria_Saida));
            rdi.setRevezamento(Util.flag(txtRevezamento));

            RdiDAO rdiDAO = new RdiDAO();
            int ret = rdiDAO.alterar(rdi);
            
            if (ret > 0) {
                JOptionPane.showMessageDialog(this, "Registro Salvo!");
                carregaRdi();
            }else
            JOptionPane.showMessageDialog(this, "Erro!");
        }
    }

Pacote Util (Metodos uteis)

//Metodo para transformar String em Data
    public static Date stringToDate(String dataStr) {
        SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");
        Date data = null;
        try {
            data = new Date(format.parse(dataStr).getTime());
        } catch (ParseException ex) {
            Logger.getLogger(Util.class.getName()).log(Level.SEVERE, null, ex);
        }
        return data;
    }

//Metodo para transformar Data em String para poder jogar  xx/xx/xxxx
    public static String dateToString(java.util.Date data) {
        String dataFormatada = new SimpleDateFormat("dd/MM/yyyy").format(data);
        return dataFormatada;
    }

4 Respostas

fabiocortolan

Cara, não sei se é o mesmo caso q ocorreu comigo, tive esse problema com um campo bigint, nesse caso tive q colocar um if verificando se o campo estava preenchido e em caso negativo um "setNull’, mas nesse caso é melhor usar PreparedStatement:

// Este é um exemplo simples, não sei se é a melhor maneira mas foi o q encontrei p/ resolver na época
public void inserirEndereco(Connection con, Cobaia c) throws SQLException, Exception {
  PreparedStatement ps;
  ResultSet rs;

  ps = con.prepareStatement(" INSERT INTO teste (campoTeste) VALUES(?) ");

  // Verifica se o campo é nulo e insere 'NULL' com o código correspondente
  if (c.getAlgumaCoisa != null) {
    ps.setLong(1, c.getAlgumaCoisa);
  } else {
    ps.setNull(7,  java.sql.Types.BIGINT);
  }
  
  ps.executeUpdate();
  ps.close();
}
fabio.argenton

fabiocortolan, muito obrigado pela ajuda, seu trecho de código me ajudou muito.

Segue como consegui resolver:

Para buscar no MySql e trazer para o Jtable criei um método na camada Util que transforma Date em String caso exista e caso seja null retorna null:

//Metodo para transformar Data xxxx-xx-xx em String para poder jogar no JformatedTextField xx/xx/xxxx
    public static String dateToString(java.util.Date data) {
        if(data != null){
        String dataFormatada = new SimpleDateFormat("dd/MM/yyyy").format(data);
        return dataFormatada;
        }else{
            return null;
        }
    }

Para os métodos Inserir e Update Camada DAO utilizei a ajuda do fabiocortolan:

String sql = "INSERT INTO rdi "
                + "(Abertura, Finalizacao, Status, Envio_999, Gera_NQ, Claim, Processo, Gabarito, "
                + "BIN, Material, Quantidade, Responsavel, Setor, Causa_Raiz, Erro_Identificado, Analise_Acao, Contagem_Saldo, "
                + "Recontagem, Varredura_FGI, Auditoria_LT24, Varredura_RW_NCM, Varredura_Inbound, Auditoria_Entrada, "
                + "Varredura_Agendamento, Auditoria_Delivery, Auditoria_Saida, Revezamento)"
                + "VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";

        com.mysql.jdbc.Connection conn = ConnectionMySQL.getConnection();

        try {
            PreparedStatement pstm = conn.prepareStatement(sql);

            pstm.setDate(1, new Date(rdi.getAbertura().getTime()));

            if (rdi.getFinalizacao() != null) { //Se não fou null
                pstm.setDate(2, new Date(rdi.getFinalizacao().getTime())); //Faz a inserção
            } else {
                pstm.setNull(2, java.sql.Types.DATE); //Senão insere null
            }

            pstm.setString(3, rdi.getStatus());
//          Continua..........
//          Continua..........

E por fim na camada view (Formulário) no botão salvar:

//         ......               

            Rdi rdi = new Rdi();
            rdi.setAbertura(txtAbertura.getDate());       //Pega dados do campo e salva no MySql
            rdi.setFinalizacao(txtFinalizacao.getDate()); //Pega dados do campo e salva no MySql

//          Continua..........
//          Continua..........
B

E se for um UPDATE …

Posso usar o IF da mesma forma ?

Eu tentei fazendo assim, mas aparentemente não deu certo.

Acontece que quando eu chamo minha tela para cadastrar/alterar dados de um usuário, o primeiro campo tem uma action focus lost e quando perde foco ele faz um select no banco varrendo pra ver se o usuário já existe, se existir ele mostra todos os dados cadastrados até o momento.

a partir daí, quando eu tento alterar a data no jDatechooser, não acontece nada. Não consigo nem alterar a data na real.
E se eu digitar a data e clicar no botão ‘update’ ele diz que não há parametro setado para aquele campo.

Alguém pode me ajudar?

B

E se for um UPDATE …

Posso usar o IF da mesma forma ?

Eu tentei fazendo assim, mas aparentemente não deu certo.

Acontece que quando eu chamo minha tela para cadastrar/alterar dados de um usuário, o primeiro campo tem uma action focus lost e quando perde foco ele faz um select no banco varrendo pra ver se o usuário já existe, se existir ele mostra todos os dados cadastrados até o momento.

a partir daí, quando eu tento alterar a data no jDatechooser, não acontece nada. Não consigo nem alterar a data na real.
E se eu digitar a data e clicar no botão ‘update’ ele diz que não há parametro setado para aquele campo.

Alguém pode me ajudar?

Criado 16 de julho de 2013
Ultima resposta 23 de mai. de 2015
Respostas 4
Participantes 3