Quero armazenar um DADO em uma ou mais VARIÁVEL

6 respostas
programaçãojavamysql
jozivam

essa variável quero pegá-la depois e setar em uma LABEL, meu resultset esta pegando os dados só não estou conseguindo setar corretamente nas labels respectivas.

6 Respostas

darlan_machado

Código? Onde está o código?

jozivam

RESULTSET - DAO

public List RST(String produto){//Pesquisar

Connection con = connectionBancoDados.getConnection();

PreparedStatement stmt = null;

ResultSet rs = null;
List<produto> produtos = new ArrayList<>();
    
    try {
        stmt = con.prepareStatement("SELECT id, produto, quantidade, valor FROM produto WHERE produto=?");
        stmt.setObject(1, produto);
       
        
        rs = stmt.executeQuery();//faz consulta noo banco e coloca no resultSet
            
            while(rs.next()){
                produto pro = new produto();
                
                pro.setId(rs.getInt(1));
                pro.setProduto(rs.getString(2));
                pro.setValor(rs.getDouble(3));
                pro.setQuantidade(rs.getInt(4));
                produtos.add(pro);
            }
                
    } catch (SQLException ex) {
        Logger.getLogger(produtoDAO.class.getName()).log(Level.SEVERE, null, ex);
    }finally{
        connectionBancoDados.closeConnetion(con, stmt, rs);
    }
    
    return produtos;
}

BOTÃO PARA LANÇAR O PRODUTO - VIEW

//LANCA PRODUTO

private void btnlancaProdutoActionPerformed(java.awt.event.ActionEvent evt) {

produtoDAO con = new produtoDAO();

produto pro = new produto();

//        connectionBancoDados bd = new connectionBancoDados();
String id = txtId.getText();
    String prod = txtProduto.getText();
    String quantidade = txtQantidade.getText();

// produtoDAO check = new produtoDAO();

if (con.CHECKPRODUTO(txtProduto.getText())) {
        
        printProduto.setText(String.valueOf(con.RST(id)));
        printProduto.setText(String.valueOf(con.RST(prod)));
        printQuantdade.setText(String.valueOf(con.RST("quantidade")));
        printPreco.setText(String.valueOf(con.RST("valor")));
//            readTable();

}else{

JOptionPane.showMessageDialog(null, item Não cadastrado!”);

}

DefaultTableModel TAB = (DefaultTableModel) tabVendas.getModel();

TAB.addRow(new Object[]{

pro.getId(),

pro.getProduto(),

pro.getQuantidade(),

pro.getValor()
});
    TAB.addRow(new Object[]{id, prod, quantidade});
    
}

BEAN

public int i() {

return getId();

}

//se eu colocar getProduto()+i(); la no pdv sai os doi juntos,

//quero que sai no campo determinado para ele
public String toString() {
    return getProduto()+i();
}

public int q(){
    return getQuantidade();
}
public double v(){
    return getValor();
}

darlan_machado

Por que não cria um table model customizado?

jozivam

a tabela e sô para titulo de teste, estou enganchado mesmo no lançamento dos dados nas label respectivas de cada um.

darlan_machado

Entendi.
Bom, basicamente você tem, no teu DAO, isto:

Que se refere a uma lista de produtos.
Porém, você só precisa de um produto, logo, o primeiro erro é retornar a lista e não um objeto único.
Corrigindo isso, é fácil, basta, para cada label, fazer a chamada ao atributo específico do produto

labelQualquer.setText(produto.getNome());
jozivam

valeu vu tentar!

Criado 26 de junho de 2018
Ultima resposta 26 de jun. de 2018
Respostas 6
Participantes 2