Bom dia a todos,
alguém pode me indicar um material para tirar essa dúvida.
Tô precisando inserir itens (cod, quant, preco unitário, preço total…) num formulário de vendas. Qual a melhor maneira?
obs: tô usando o Postgres.
Usando PreparedStatement no seu método:
Ex:
public boolean addXpto(Xpto xpto){
...
strSQL = "INSERT INTO tabela " ;
strSQL += " (coluna1, coluna2)
strSQL += " VALUES (?, ?)";
Connection conn = null;
PreparedStatement stmt = null;
try {
conn = SuaConexao.getConnection();
stmt = conn.prepareStatement(strSQL);
stmt.setInt(1,xpto.getXx());
stmt.setString(2,xpto.getYy());
...
}
Você deve setar os campos de acordo com o banco de dados no caso de valores campo numeric(9,2) pode usar setDouble ou setBigDecimal.
Material relacionado:
http://www.guj.com.br/java.tutorial.artigo.115.1.guj
Boa Noite,
meu amigo, acho que não expliquei muito bem o meu problema.
É o seguinte:
não consigo inserir os itens da caixa de texto no JList.
Os valores chegam na classe Itens, porém não passam para o Vector.
O meu código é o seguinte:
Tenho a classe Itens de Orcamento:
public class ItemOrcamento {
public ItemOrcamento() {}
private int quantidade;
private String descricao;
private double preco;
public int getQuantidade() {
return quantidade; }
public void setQuantidade(int quantidade) {
this.quantidade = quantidade; }
public String getDescricao() {
return descricao; }
public void setDescricao(String descricao) {
this.descricao = descricao; }
public double getPreco() {
return preco; }
public void setPreco(double preco) {
this.preco = preco; }
public String toString(){
return getDescricao() + " - " + getQuantidade() + " - " + getPreco();
}
}
A classe Orcamento:
package model;
import java.util.Vector;
public class Orcamento {
private Vector<ItemOrcamento> descricao;
private int codOrcamento;
private double valorOrçamento;
private String vendedor;
private String data;
private double desconto;
public Orcamento() {
descricao = new Vector<ItemOrcamento>(); }
public void insereProdutos( ItemOrcamento prod ){
descricao.add(prod); }
public ItemOrcamento remove(){
return descricao.remove(0); }
public int getTamanho() {
return descricao.size(); }
public Orcamento clone() {
Orcamento f = new Orcamento();
for( int i = 0; i < descricao.size(); i++ ){
f.insereProdutos(descricao.get(i) ); }
return f;
}
}
Uma classe OrcamentoControle:
package model;
import java.util.Vector;
public class OrcamentoControle {
private Orcamento orc;
public OrcamentoControle() {
}
public void iniciarOrcamento() {
Orcamento orc = new Orcamento(); }
public void adicionaProduto( int quant, String desc, double prec ) { ItemOrcamento it = new ItemOrcamento();
it.setQuantidade(quant);
it.setDescricao(desc);
it.setPreco(prec);
orc.insereProdutos( it ); }
public void atenderProduto(){
orc.remove(); }
public Vector<String> getOrcamento() {
Vector<String> vet = new Vector<String>();
Orcamento o = orc.clone();
while( o.getTamanho() > 0 ) {
vet.add( o.remove().toString() ); }
return vet; }
}
A interface:
package view;
import control.Dao;
import javax.naming.ldap.Control;
import javax.swing.JOptionPane;
import model.*;
public class Orcamento extends javax.swing.JFrame {
Dao da = new Dao();
ItemOrcamento io = new ItemOrcamento();
Produto pr = new Produto();
model.Orcamento Or = new model.Orcamento();
private OrcamentoControle ctrl;
public Orcamento() {
initComponents();
ctrl = new OrcamentoControle();
}
private void btnInserirActionPerformed(java.awt.event.ActionEvent evt) {
if( listaitens.getModel().getSize() == 0 ){
ctrl.iniciarOrcamento(); }
ctrl.adicionaProduto(Integer.parseInt(txtQtd.getText()),txtProduto.getText(), Double.parseDouble(txtPreco.getText()));
listaitens.setListData( ctrl.getOrcamento));
}
}