Olá pessoal, estou tentando fazer 1 programinha estilo programas comerciais, controle de estoque no caso. Estou querendo que adicione produtos ao banco de dados, de update, delete, etc. mais está dando um erro. Logo quando mando rodar, ele ja abre o joptionpane dizendo que não foi possivel achar o driver. segue abaixo o codigo
OBS: Estou usando o Netbeans 6.7.1
package br.com.desk.modelos;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.JOptionPane;
public class Estoque extends javax.swing.JFrame {
private String nome, preco, tamanho, cor, garantia, familia ;
private String sql = "INSERT INTO produtos (nome, preco, tamanho, cor, garantia, familia) values (?, ?, ?, ?, ?, ?) ;" ;
private String consulta = "SELECT nome FROM produtos WHERE nome = ? ;";
public Estoque() {
try {
Class.forName("com.mysql.jdbc.Driver") ;
}
catch (Exception e) {
JOptionPane.showMessageDialog(this, "Não foi possivel achar o Driver.") ;
System.exit(1) ;
}
initComponents();
}
public boolean cadastrar(String nome, String preco, String tamanho, String cor, String garantia, String familia) throws ClassNotFoundException, SQLException {
Class.forName("com.mysql.jdbc.Driver") ;
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/c_estoque", "root", "root") ;
PreparedStatement consultar = conn.prepareStatement(consulta) ;
consultar.setString(1, nome) ;
ResultSet rs = consultar.executeQuery() ;
if (rs.next()) {
return false ;
}
else {
PreparedStatement instrucao = conn.prepareStatement(sql) ;
instrucao.setString(1, nome) ;
instrucao.setString(2, preco) ;
instrucao.setString(3, tamanho) ;
instrucao.setString(4, cor) ;
instrucao.setString(5, garantia) ;
instrucao.setString(6, familia) ;
int r = instrucao.executeUpdate() ;
instrucao.close() ;
conn.close() ;
return r == 1 ? true : false ;
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
pnlConteudo = new javax.swing.JPanel();
pnlBotoes = new javax.swing.JPanel();
btnNovo = new javax.swing.JButton();
btnExcluir = new javax.swing.JButton();
btnProcurar = new javax.swing.JButton();
btnSair = new javax.swing.JButton();
lblProduto = new javax.swing.JLabel();
lblPreco = new javax.swing.JLabel();
lblTamanho = new javax.swing.JLabel();
lblCor = new javax.swing.JLabel();
lblGarantia = new javax.swing.JLabel();
lblFamilia = new javax.swing.JLabel();
lblId = new javax.swing.JLabel();
txtProduto = new javax.swing.JTextField();
txtPreco = new javax.swing.JTextField();
txtTamanho = new javax.swing.JTextField();
txtCor = new javax.swing.JTextField();
txtGarantia = new javax.swing.JTextField();
txtFamilia = new javax.swing.JTextField();
txtId = new javax.swing.JTextField();
jScrollPane1 = new javax.swing.JScrollPane();
tblInfo = new javax.swing.JTable();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("Controle de Estoque - by desk");
addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent evt) {
formWindowClosing(evt);
}
});
pnlConteudo.setBackground(new java.awt.Color(204, 204, 204));
pnlConteudo.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(153, 153, 153)));
pnlBotoes.setBackground(new java.awt.Color(204, 204, 204));
btnNovo.setIcon(new javax.swing.ImageIcon("C:\\Users\\DesK\\Documents\\icones\\add_16x16.gif")); // NOI18N
btnNovo.setText("Cadastrar");
btnNovo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnNovoActionPerformed(evt);
}
});
btnExcluir.setIcon(new javax.swing.ImageIcon("C:\\Users\\DesK\\Documents\\icones\\delete_16x16.gif")); // NOI18N
btnExcluir.setText(" Excluir ");
btnProcurar.setIcon(new javax.swing.ImageIcon("C:\\Users\\DesK\\Documents\\icones\\zoom_16x16.gif")); // NOI18N
btnProcurar.setText("Procurar");
btnProcurar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnProcurarActionPerformed(evt);
}
});
btnSair.setIcon(new javax.swing.ImageIcon("C:\\Users\\DesK\\Documents\\icones\\disconnect2_16x16.gif")); // NOI18N
btnSair.setText(" Sair ");
btnSair.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnSairActionPerformed(evt);
}
});
javax.swing.GroupLayout pnlBotoesLayout = new javax.swing.GroupLayout(pnlBotoes);
pnlBotoes.setLayout(pnlBotoesLayout);
pnlBotoesLayout.setHorizontalGroup(
pnlBotoesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(pnlBotoesLayout.createSequentialGroup()
.addContainerGap()
.addGroup(pnlBotoesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(btnSair)
.addComponent(btnExcluir)
.addComponent(btnProcurar)
.addComponent(btnNovo))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
pnlBotoesLayout.setVerticalGroup(
pnlBotoesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(pnlBotoesLayout.createSequentialGroup()
.addContainerGap()
.addComponent(btnNovo)
.addGap(58, 58, 58)
.addComponent(btnExcluir)
.addGap(68, 68, 68)
.addComponent(btnProcurar)
.addGap(66, 66, 66)
.addComponent(btnSair)
.addContainerGap(56, Short.MAX_VALUE))
);
lblProduto.setText("Produto: ");
lblPreco.setText("Preço: ");
lblTamanho.setText("Tamanho: ");
lblCor.setText("Cor: ");
lblGarantia.setText("Garantia: ");
lblFamilia.setText("Família: ");
lblId.setText("Id: ");
tblInfo.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null, null},
{null, null, null, null, null},
{null, null, null, null, null},
{null, null, null, null, null}
},
new String [] {
"ID", "Nome", "Preço", "Cor", "Família"
}
));
jScrollPane1.setViewportView(tblInfo);
javax.swing.GroupLayout pnlConteudoLayout = new javax.swing.GroupLayout(pnlConteudo);
pnlConteudo.setLayout(pnlConteudoLayout);
pnlConteudoLayout.setHorizontalGroup(
pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlConteudoLayout.createSequentialGroup()
.addContainerGap()
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 305, Short.MAX_VALUE)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, pnlConteudoLayout.createSequentialGroup()
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, pnlConteudoLayout.createSequentialGroup()
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lblGarantia)
.addComponent(lblFamilia)
.addComponent(lblId))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txtFamilia, javax.swing.GroupLayout.DEFAULT_SIZE, 189, Short.MAX_VALUE)
.addComponent(txtId, javax.swing.GroupLayout.DEFAULT_SIZE, 189, Short.MAX_VALUE)
.addComponent(txtGarantia, javax.swing.GroupLayout.DEFAULT_SIZE, 189, Short.MAX_VALUE)))
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, pnlConteudoLayout.createSequentialGroup()
.addComponent(lblCor)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(txtCor))
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, pnlConteudoLayout.createSequentialGroup()
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lblTamanho)
.addComponent(lblProduto)
.addComponent(lblPreco))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(txtTamanho)
.addComponent(txtPreco)
.addComponent(txtProduto, javax.swing.GroupLayout.DEFAULT_SIZE, 189, Short.MAX_VALUE)))))
.addGap(58, 58, 58)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(pnlBotoes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
);
pnlConteudoLayout.setVerticalGroup(
pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(pnlBotoes, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(pnlConteudoLayout.createSequentialGroup()
.addContainerGap()
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lblProduto)
.addComponent(txtProduto, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(12, 12, 12)
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtPreco, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblPreco))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(lblTamanho)
.addComponent(txtTamanho, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(lblCor)
.addComponent(txtCor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(lblGarantia)
.addComponent(txtGarantia, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(lblFamilia)
.addComponent(txtFamilia, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(pnlConteudoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lblId)
.addComponent(txtId, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 81, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(62, Short.MAX_VALUE))
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(pnlConteudo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(pnlConteudo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
);
pack();
}// </editor-fold>
private void formWindowClosing(java.awt.event.WindowEvent evt) {
}
private void btnProcurarActionPerformed(java.awt.event.ActionEvent evt) {
}
private void btnSairActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0);
}
private void btnNovoActionPerformed(java.awt.event.ActionEvent evt) {
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Estoque().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton btnExcluir;
private javax.swing.JButton btnNovo;
private javax.swing.JButton btnProcurar;
private javax.swing.JButton btnSair;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JLabel lblCor;
private javax.swing.JLabel lblFamilia;
private javax.swing.JLabel lblGarantia;
private javax.swing.JLabel lblId;
private javax.swing.JLabel lblPreco;
private javax.swing.JLabel lblProduto;
private javax.swing.JLabel lblTamanho;
private javax.swing.JPanel pnlBotoes;
private javax.swing.JPanel pnlConteudo;
private javax.swing.JTable tblInfo;
private javax.swing.JTextField txtCor;
private javax.swing.JTextField txtFamilia;
private javax.swing.JTextField txtGarantia;
private javax.swing.JTextField txtId;
private javax.swing.JTextField txtPreco;
private javax.swing.JTextField txtProduto;
private javax.swing.JTextField txtTamanho;
// End of variables declaration
}
