TelaLivro:
[code]package fronteira;
import fronteira.*;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import javax.swing.table.DefaultTableModel;
import modelo.Livro;
import persistencia.Conexao;
import persistencia.PerLivro;
/**
*
-
@author Administrador
*/
public class TelaLivro extends javax.swing.JFrame {
String isbn, titulo, genero, tipo, autor, editora, edi;
int edicao;/** Creates new form NewJFrame */
public TelaLivro() {
initComponents();
PerLivro perlivro=new PerLivro();
// listar();}
@SuppressWarnings(“unchecked”)
//
private void initComponents() {jDesktopPane1 = new javax.swing.JDesktopPane(); jScrollPane1 = new javax.swing.JScrollPane(); tblLivro = new javax.swing.JTable(); lblEdicao = new javax.swing.JLabel(); lblTitulo = new javax.swing.JLabel(); lblAutor = new javax.swing.JLabel(); lblEditora = new javax.swing.JLabel(); bttAlterar = new javax.swing.JButton(); bttExcluir = new javax.swing.JButton(); bttLimpar = new javax.swing.JButton(); bttOk = new javax.swing.JButton(); txtTitulo = new javax.swing.JTextField(); txtEditora = new javax.swing.JTextField(); lblGenero = new javax.swing.JLabel(); txtGenero = new javax.swing.JTextField(); txtEdicao = new javax.swing.JTextField(); lblISBN = new javax.swing.JLabel(); txtISBN = new javax.swing.JTextField(); lblTipo = new javax.swing.JLabel(); txtTipo = new javax.swing.JTextField(); txtAutor = new javax.swing.JTextField(); bttCadAutor = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); setTitle("Cadastrar Livros"); jDesktopPane1.setBackground(new java.awt.Color(238, 238, 238)); jScrollPane1.setPreferredSize(new java.awt.Dimension(469, 402)); tblLivro.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { "Titulo", "Autor", "Editora", "Gênero", "ISBN", "Edição", "Tipo" } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } }); tblLivro.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_ALL_COLUMNS); tblLivro.setMinimumSize(new java.awt.Dimension(200, 0)); tblLivro.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION); tblLivro.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { tblLivroMouseClicked(evt); } }); jScrollPane1.setViewportView(tblLivro); jScrollPane1.setBounds(10, 170, 683, 319); jDesktopPane1.add(jScrollPane1, javax.swing.JLayeredPane.DEFAULT_LAYER); lblEdicao.setText("Edição"); lblEdicao.setBounds(10, 100, 45, 14); jDesktopPane1.add(lblEdicao, javax.swing.JLayeredPane.DEFAULT_LAYER); lblTitulo.setText("Titulo"); lblTitulo.setBounds(10, 10, 34, 24); jDesktopPane1.add(lblTitulo, javax.swing.JLayeredPane.DEFAULT_LAYER); lblAutor.setText("Autor"); lblAutor.setBounds(10, 40, 34, 20); jDesktopPane1.add(lblAutor, javax.swing.JLayeredPane.DEFAULT_LAYER); lblEditora.setText("Editora"); lblEditora.setBounds(10, 70, 34, 14); jDesktopPane1.add(lblEditora, javax.swing.JLayeredPane.DEFAULT_LAYER); bttAlterar.setText("Alterar"); bttAlterar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bttAlterarActionPerformed(evt); } }); bttAlterar.setBounds(10, 130, 65, 23); jDesktopPane1.add(bttAlterar, javax.swing.JLayeredPane.DEFAULT_LAYER); bttExcluir.setText("Excluir"); bttExcluir.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bttExcluirActionPerformed(evt); } }); bttExcluir.setBounds(80, 130, 63, 23); jDesktopPane1.add(bttExcluir, javax.swing.JLayeredPane.DEFAULT_LAYER); bttLimpar.setText("Limpar"); bttLimpar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bttLimparActionPerformed(evt); } }); bttLimpar.setBounds(400, 130, 63, 23); jDesktopPane1.add(bttLimpar, javax.swing.JLayeredPane.DEFAULT_LAYER); bttOk.setText("OK"); bttOk.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bttOkActionPerformed(evt); } }); bttOk.setBounds(470, 130, 218, 23); jDesktopPane1.add(bttOk, javax.swing.JLayeredPane.DEFAULT_LAYER); txtTitulo.setBounds(80, 10, 612, 20); jDesktopPane1.add(txtTitulo, javax.swing.JLayeredPane.DEFAULT_LAYER); txtEditora.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { txtEditoraActionPerformed(evt); } }); txtEditora.setBounds(80, 70, 217, 20); jDesktopPane1.add(txtEditora, javax.swing.JLayeredPane.DEFAULT_LAYER); lblGenero.setText("Gênero"); lblGenero.setBounds(300, 70, 35, 14); jDesktopPane1.add(lblGenero, javax.swing.JLayeredPane.DEFAULT_LAYER); txtGenero.setBounds(340, 70, 352, 20); jDesktopPane1.add(txtGenero, javax.swing.JLayeredPane.DEFAULT_LAYER); txtEdicao.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { txtEdicaoActionPerformed(evt); } }); txtEdicao.setBounds(80, 100, 125, 20); jDesktopPane1.add(txtEdicao, javax.swing.JLayeredPane.DEFAULT_LAYER); lblISBN.setText("ISBN"); lblISBN.setBounds(210, 100, 40, 20); jDesktopPane1.add(lblISBN, javax.swing.JLayeredPane.DEFAULT_LAYER); txtISBN.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { txtISBNActionPerformed(evt); } }); txtISBN.setBounds(250, 100, 228, 20); jDesktopPane1.add(txtISBN, javax.swing.JLayeredPane.DEFAULT_LAYER); lblTipo.setText("Tipo"); lblTipo.setBounds(490, 100, 32, 20); jDesktopPane1.add(lblTipo, javax.swing.JLayeredPane.DEFAULT_LAYER); txtTipo.setBounds(520, 100, 173, 20); jDesktopPane1.add(txtTipo, javax.swing.JLayeredPane.DEFAULT_LAYER); txtAutor.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { txtAutorActionPerformed(evt); } }); txtAutor.setBounds(80, 40, 564, 20); jDesktopPane1.add(txtAutor, javax.swing.JLayeredPane.DEFAULT_LAYER); bttCadAutor.setText("+"); bttCadAutor.setFocusPainted(false); bttCadAutor.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bttCadAutorActionPerformed(evt); } }); bttCadAutor.setBounds(650, 40, 40, 22); jDesktopPane1.add(bttCadAutor, javax.swing.JLayeredPane.DEFAULT_LAYER); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jDesktopPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 703, Short.MAX_VALUE) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jDesktopPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 500, Short.MAX_VALUE) ); pack();
}//
private void txtAutorActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}private void txtEdicaoActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}private void txtEditoraActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}private void bttLimparActionPerformed(java.awt.event.ActionEvent evt) {
limpar();
}private void txtISBNActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}private void bttOkActionPerformed(java.awt.event.ActionEvent evt) {
salvar();Livro livro=new Livro(); livro.setTitulo(txtTitulo.getText().trim()); livro.setAutor(txtAutor.getText().trim()); livro.setEditora(txtEditora.getText().trim()); livro.setGenero(txtGenero.getText().trim()); livro.setIsbn(txtISBN.getText().trim()); livro.setTipo(txtTipo.getText().trim()); try { livro.setEdicao(Integer.parseInt(txtEdicao.getText().trim())); } catch(NumberFormatException e) { // Supondo que se tiver conteudo inválido (não numérico ou vazio) você queira atribuir Zero livro.setEdicao(0); } PerLivro perlivro=new PerLivro(); perlivro.gravar(livro); limpar();
}
private void tblLivroMouseClicked(java.awt.event.MouseEvent evt) {
int selecionado = tblLivro.getSelectedRow();txtTitulo.setText((String) tblLivro.getValueAt(selecionado,0));
txtAutor.setText((String) tblLivro.getValueAt(selecionado,1));
txtEditora.setText((String) tblLivro.getValueAt(selecionado,2));
txtISBN.setText((String) tblLivro.getValueAt(selecionado,4));
txtTipo.setText((String) tblLivro.getValueAt(selecionado,6));
txtGenero.setText((String) tblLivro.getValueAt(selecionado,3));
txtEdicao.setText((String) tblLivro.getValueAt(selecionado,5));
isbn=txtISBN.getText().trim();
titulo=txtTitulo.getText().trim();
autor=txtAutor.getText().trim();
editora=txtEditora.getText().trim();
tipo=txtTipo.getText().trim();
genero=txtGenero.getText().trim();
edicao=Integer.parseInt(txtEdicao.getText().trim());}
private void bttAlterarActionPerformed(java.awt.event.ActionEvent evt) {
PerLivro perlivro=new PerLivro();
isbn = txtISBN.getText();
titulo = txtTitulo.getText();
autor = txtAutor.getText();
editora = txtEditora.getText();
tipo = txtTipo.getText();
genero = txtGenero.getText();
edicao = Integer.parseInt(txtEdicao.getText());
perlivro.alterar(titulo, autor, editora,genero,isbn, edicao, tipo);
String[] linha=new String[7];
linha[0]=txtTitulo.getText();
linha[1]=txtAutor.getText();
linha[2]=txtEditora.getText();
linha[3]=txtGenero.getText();
linha[4]=txtISBN.getText();
linha[5]=String.valueOf(txtEdicao.getText());
linha[6]=txtTipo.getText();
((DefaultTableModel) tblLivro.getModel()).removeRow(tblLivro.getSelectedRow());
DefaultTableModel modelo=(DefaultTableModel) tblLivro.getModel();
modelo.addRow(linha);
tblLivro.setModel(modelo);}
private void bttExcluirActionPerformed(java.awt.event.ActionEvent evt) {
PerLivro perlivro=new PerLivro();
perlivro.excluir(isbn);
((DefaultTableModel) tblLivro.getModel()).removeRow(tblLivro.getSelectedRow());
tblLivro.setModel(tblLivro.getModel());
limpar();
}private void bttCadAutorActionPerformed(java.awt.event.ActionEvent evt) {
TelaCadAutor autores=new TelaCadAutor();
jDesktopPane1.add(autores);
autores.moveToFront();
}/**
-
@param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new TelaLivro().setVisible(true);}
});
}
// Variables declaration - do not modify
private javax.swing.JButton bttAlterar;
private javax.swing.JButton bttCadAutor;
private javax.swing.JButton bttExcluir;
private javax.swing.JButton bttLimpar;
private javax.swing.JButton bttOk;
private javax.swing.JDesktopPane jDesktopPane1;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JLabel lblAutor;
private javax.swing.JLabel lblEdicao;
private javax.swing.JLabel lblEditora;
private javax.swing.JLabel lblGenero;
private javax.swing.JLabel lblISBN;
private javax.swing.JLabel lblTipo;
private javax.swing.JLabel lblTitulo;
private javax.swing.JTable tblLivro;
private javax.swing.JTextField txtAutor;
private javax.swing.JTextField txtEdicao;
private javax.swing.JTextField txtEditora;
private javax.swing.JTextField txtGenero;
private javax.swing.JTextField txtISBN;
private javax.swing.JTextField txtTipo;
private javax.swing.JTextField txtTitulo;
// End of variables declaration
public void limpar(){
txtTitulo.setText(null);
txtAutor.setText(null);
txtEditora.setText(null);
txtISBN.setText(null);
txtTipo.setText(null);
txtGenero.setText(null);
txtEdicao.setText(null); -
}
public void salvar(){
DefaultTableModel modelo= (DefaultTableModel) tblLivro.getModel();
String[] linha=new String[7];
linha[0]=txtTitulo.getText().trim();
linha[1]=txtAutor.getText().trim();
linha[2]=txtEditora.getText().trim();
linha[3]=txtGenero.getText().trim();
linha[4]=txtISBN.getText().trim();
linha[5]=txtEdicao.getText().trim();
linha[6]=txtTipo.getText().trim();
modelo.addRow(linha);
tblLivro.setModel(modelo);
}
////public void definirModelo(String[] linhas){
//// PerLivro perlivro=new PerLivro();
////DefaultTableModel modelo=(DefaultTableModel) tblLivro.getModel();
////
//// modelo.addRow(linhas);
//// tblLivro.setModel(modelo);
////}
public ArrayListlistar(){
String sql=“select * from livros”;
try{
Connection conn=Conexao.getConexao();
PreparedStatement pst=conn.prepareStatement(sql);
ResultSet rs=pst.executeQuery();
List livros= new ArrayList();
Livro livro;
while(rs.next()){
livro=new Livro();
livro.setTitulo(rs.getString(1));
livro.setAutor(rs.getString(2));
livro.setEditora(rs.getString(3));
livro.setGenero(rs.getString(4));
livro.setIsbn(rs.getString(5));
livro.setEdicao(rs.getInt(6));
livro.setTipo(rs.getString(7));
livros.add(livro);
String[] linhas=new String[7];
linhas[0]=livro.getTitulo();
linhas[1]=livro.getAutor();
linhas[2]=livro.getEditora();
linhas[3]=livro.getGenero();
linhas[4]=livro.getIsbn();
linhas[5]=String.valueOf(livro.getEdicao());
linhas[6]=livro.getTipo();
DefaultTableModel modelo=(DefaultTableModel) tblLivro.getModel();
modelo.addRow(linhas);
}
return (ArrayList<Livro>) livros;
}catch(Exception e){
System.out.println("Erro ao gravar livro "+e.toString());
return null;
}
}
}[/code]