jDateChooser com MySql

1 resposta
dateprogramaçãojavamysql
L.Lovato

Boa noite à todos.
Galera, estou com dois problemas referente as datas no meu sistema
Tenho uma tabela que me traz um produto com suas respectivas datas de compra/vencimento.

Problema numero 1 -> Está acontecendo algo difícil de entender, eu cadastro a data de compra agora (30/05/2018) e coloco a data de vencimento para dia 10/06/2018, porem tem produtos que ele cadastra como um dia antes, e tem produtos que ele cadastra como um dia depois, por exemplo:

NO SISTEMA:
1
Obs.: No sistema eu cadastrei o produto “coco” como: “COMPRA: 30/05/2018” e “VALIDADE 10/06/2018”, perceba que ele retrocedeu um dia em ambas as datas.
O produto coca cola está correto, eu cadastrei exatamente as datas apresentadas.

NO BANCO DE DADOS:
2
Obs.: No banco de dados já aparece diferente, o produto “coco” está correto, foi essa data mesmo que inseri (porem perceba que la em cima na tela do sistema ele me mostrou diferente).
O produto coca cola está incorreto, pois a data correta que eu cadastrei no sistema foi “COMPRA: 30/05/2018” e “VALIDADE: 10/06/2018”.

Estou utilizando uma Table Model.

Resumindo -> Alguns produtos estão certo no sistema e errado no banco e vise versa, desculpe a confusão, mas tentei explicar da melhor forma :disappointed_relieved:

Problema numero 2 -> Como faço para ser exibido a data no padrão br ? ( ## - ## - #### ).

Abaixo está o meu código dos métodos ( métodos adicionar() , pesquisar_produtos() e setar_campos() ):

private void adicionar() {

    if ((txtProProduto.getText().isEmpty())
            || (txtProPreco.getText().isEmpty()) || (txtProQuantidade.getText().isEmpty())
            || (jDatProCompra.getDate() == null || (jDatProVencimento.getDate() == null))) {
        JOptionPane.showMessageDialog(null, "Preencha todos os campos obrigatórios.");
    } else {
        String sql = "insert into tbprodutos(produto,preco,quantidade,categoria,compra,validade) values(?,?,?,?,?,?)";
        try {
            pst = connection.prepareStatement(sql);
            pst.setString(1, txtProProduto.getText());
            pst.setString(2, txtProPreco.getValue().toString());
            pst.setString(3, txtProQuantidade.getText());
            pst.setString(4, cboProCategoria.getSelectedItem().toString());
            pst.setDate(5, new java.sql.Date(jDatProCompra.getDate().getTime()));
            pst.setDate(6, new java.sql.Date(jDatProVencimento.getDate().getTime()));

            int adicionado = pst.executeUpdate();
            if (adicionado > 0) {
                JOptionPane.showMessageDialog(null, "Produto cadastrado com sucesso.");
                txtProProduto.setText(null);
                txtProPreco.setText(null);
                txtProQuantidade.setText(null);
                cboProCategoria.setSelectedItem(null);
                jDatProCompra.setDate(null);
                jDatProVencimento.setDate(null);
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e);
        }

    }
}

private void pesquisar_produto() {
    String sql = "select produto,preco,quantidade,categoria,compra,validade from tbprodutos where produto like ?";
    try {
        pst = connection.prepareStatement(sql);
        pst.setString(1, txtProPesquisar.getText() + "%");
        rs = pst.executeQuery();
        tblProdutos.setModel(DbUtils.resultSetToTableModel(rs));

    } catch (Exception e) {
        JOptionPane.showMessageDialog(null, e);
    }
}
public void setar_campos() {
    
    int setar = tblProdutos.getSelectedRow();
    txtProProduto.setText(tblProdutos.getModel().getValueAt(setar, 0).toString());
    txtProPreco.setText(tblProdutos.getModel().getValueAt(setar, 1).toString());
    txtProQuantidade.setText(tblProdutos.getModel().getValueAt(setar, 2).toString());
    cboProCategoria.setSelectedItem(tblProdutos.getModel().getValueAt(setar, 3).toString());
    jDatProCompra.setDate((java.sql.Date) tblProdutos.getModel().getValueAt(setar, 4));
    jDatProVencimento.setDate((java.sql.Date) tblProdutos.getModel().getValueAt(setar, 5));
}

Obrigado à todos!

1 Resposta

L.Lovato

algueeeeem pf ?

Criado 31 de maio de 2018
Ultima resposta 31 de mai. de 2018
Respostas 1
Participantes 1