Rapaz seguinte, eu realmente não sei como atualzar, ou seja, não fiz nada dessa parte de update.
Mas vou inserir o código todo aqui:
package Supermercado.Tela;
import com.mysql.jdbc.Connection;
import java.awt.Toolkit;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
public class Tela_Produto_Consulta extends javax.swing.JFrame {
public Tela_Produto_Consulta() {
initComponents();
setIcon();
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel_Principal = new javax.swing.JPanel();
jPanel_Menu = new javax.swing.JPanel();
jLabel_Principal = new javax.swing.JLabel();
jLabel_Produtos = new javax.swing.JLabel();
jLabel_Venda = new javax.swing.JLabel();
jLabel_Sair = new javax.swing.JLabel();
jPanel1 = new javax.swing.JPanel();
jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jLabel1 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("iVendas - Principal");
setBounds(new java.awt.Rectangle(0, 0, 0, 0));
setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
jPanel_Principal.setToolTipText("");
jPanel_Principal.setName(""); // NOI18N
jPanel_Principal.setPreferredSize(new java.awt.Dimension(720, 460));
jPanel_Menu.setBackground(new java.awt.Color(255, 255, 255));
jLabel_Principal.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
jLabel_Principal.setIcon(new javax.swing.ImageIcon("C:\\Users\\arthur\\Desktop\\workspace\\supermercado\\src\\Supermercado\\Tela\\img\\principal.png")); // NOI18N
jLabel_Principal.setText("Principal");
jLabel_Principal.setIconTextGap(3);
jLabel_Principal.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jLabel_PrincipalMouseClicked(evt);
}
});
jLabel_Produtos.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
jLabel_Produtos.setIcon(new javax.swing.ImageIcon("C:\\Users\\arthur\\Desktop\\workspace\\supermercado\\src\\Supermercado\\Tela\\img\\produto.png")); // NOI18N
jLabel_Produtos.setText("Produto");
jLabel_Produtos.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jLabel_ProdutosMouseClicked(evt);
}
});
jLabel_Venda.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
jLabel_Venda.setIcon(new javax.swing.ImageIcon("C:\\Users\\arthur\\Desktop\\workspace\\supermercado\\src\\Supermercado\\Tela\\img\\compras.png")); // NOI18N
jLabel_Venda.setText("Venda");
jLabel_Venda.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jLabel_VendaMouseClicked(evt);
}
});
jLabel_Sair.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
jLabel_Sair.setIcon(new javax.swing.ImageIcon("C:\\Users\\arthur\\Desktop\\workspace\\supermercado\\src\\Supermercado\\Tela\\img\\sair.png")); // NOI18N
jLabel_Sair.setText("Sair");
jLabel_Sair.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jLabel_SairMouseClicked(evt);
}
});
javax.swing.GroupLayout jPanel_MenuLayout = new javax.swing.GroupLayout(jPanel_Menu);
jPanel_Menu.setLayout(jPanel_MenuLayout);
jPanel_MenuLayout.setHorizontalGroup(
jPanel_MenuLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel_MenuLayout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel_Principal)
.addGap(18, 18, 18)
.addComponent(jLabel_Produtos)
.addGap(18, 18, 18)
.addComponent(jLabel_Venda)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel_Sair)
.addContainerGap())
);
jPanel_MenuLayout.setVerticalGroup(
jPanel_MenuLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel_MenuLayout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel_MenuLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel_Principal)
.addComponent(jLabel_Produtos)
.addComponent(jLabel_Venda)
.addComponent(jLabel_Sair))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Consulta de Produtos"));
jTable1.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, null, null, null, null}
},
new String [] {
"Nome", "Código", "Fornecedor", "Descrição", "Quantidade Estoque", "Quantidade Venda"
}
));
jScrollPane1.setViewportView(jTable1);
jLabel1.setText("Nome");
jButton1.setText("Consultar");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jButton2.setText("Excluir");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jButton3.setText("Alterar");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 668, Short.MAX_VALUE)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jTextField1)))
.addContainerGap())
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(80, 80, 80)
.addComponent(jButton1)
.addGap(110, 110, 110)
.addComponent(jButton3)
.addGap(99, 99, 99)
.addComponent(jButton2)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 275, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton1)
.addComponent(jButton2)
.addComponent(jButton3))
.addContainerGap(76, Short.MAX_VALUE))
);
javax.swing.GroupLayout jPanel_PrincipalLayout = new javax.swing.GroupLayout(jPanel_Principal);
jPanel_Principal.setLayout(jPanel_PrincipalLayout);
jPanel_PrincipalLayout.setHorizontalGroup(
jPanel_PrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel_PrincipalLayout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
.addComponent(jPanel_Menu, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
jPanel_PrincipalLayout.setVerticalGroup(
jPanel_PrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel_PrincipalLayout.createSequentialGroup()
.addComponent(jPanel_Menu, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel_Principal, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel_Principal, javax.swing.GroupLayout.DEFAULT_SIZE, 521, Short.MAX_VALUE)
);
pack();
}// </editor-fold>
private void jLabel_PrincipalMouseClicked(java.awt.event.MouseEvent evt) {
}
private void jLabel_SairMouseClicked(java.awt.event.MouseEvent evt) {
System.exit(0);
}
private void jLabel_ProdutosMouseClicked(java.awt.event.MouseEvent evt) {
new Tela_Produto_Inserir().setVisible(true);
}
private void jLabel_VendaMouseClicked(java.awt.event.MouseEvent evt) {
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con;
try {
con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost/dbjava","root", "");
String select_consulta = "SELECT *FROM produto WHERE nome = ?";
PreparedStatement cmd;
cmd = con.prepareStatement(select_consulta);
cmd.setString(1, jTextField1.getText());
ResultSet rs;
rs=cmd.executeQuery();
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
model.setNumRows(0);
while (rs.next()){
model.addRow(new Object []{
rs.getString("nome"),
rs.getString("codigo"),
rs.getString("fornecedor"),
rs.getString("descricao"),
rs.getString("quantidade_estoque"),
rs.getString("quantidade_venda")
});
}
} catch (SQLException ex) {
System.out.println("erro sql");
}
} catch (ClassNotFoundException ex) {
System.out.println("erro classe");
}
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost/dbjava","root", "");
String query = "DELETE FROM produto WHERE nome = ?";
PreparedStatement cmd = con.prepareStatement(query);
String index;
index = (String) jTable1.getModel().getValueAt(jTable1.getSelectedRow(), 0);
cmd.setString(1,index);
cmd.executeUpdate();
} catch (ClassNotFoundException ex) {
System.out.println("erro classe sql");
} catch (SQLException ex) {
System.out.println("erro sql");
}
}
@SuppressWarnings("empty-statement")
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Tela_Produto_Consulta().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel_Principal;
private javax.swing.JLabel jLabel_Produtos;
private javax.swing.JLabel jLabel_Sair;
private javax.swing.JLabel jLabel_Venda;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel_Menu;
private javax.swing.JPanel jPanel_Principal;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable1;
private javax.swing.JTextField jTextField1;
// End of variables declaration
private void setIcon() {
setIconImage(Toolkit.getDefaultToolkit().getImage(getClass ().getResource("icone.png")));
}
}
Fiz o alterar junto com a tela de Consulta
e tenho apenas duas telas, por enquanto, Produto_Inserir e Produto_Consultar (que também altera e exclui).
O jButton3 que é Alterar;
ok obrigado cara!