Untitled
unknown
plain_text
2 months ago
12 kB
5
Indexable
/*package evidencijaRadnika_EM; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import java.awt.Font; import javax.swing.JTextField; import javax.swing.JButton; import java.awt.Color; import javax.swing.JScrollPane; import javax.swing.JTable; import java.awt.event.ActionListener; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.Statement; import java.awt.event.ActionEvent; import javax.swing.table.DefaultTableModel; public class Evidencija { private JFrame frame; private JTable tablica; private JTextField sifra_evidencije; public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { Evidencija window = new Evidencija(); window.frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } public Evidencija() { initialize(); } private void initialize() { frame = new JFrame(); frame.setBounds(100, 100, 777, 573); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().setLayout(null); JLabel lblNewLabel = new JLabel("EVIDENCIJA RADNIKA"); lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 20)); lblNewLabel.setBounds(250, 38, 250, 54); frame.getContentPane().add(lblNewLabel); JButton gumb_prikazi = new JButton("Prikaži"); gumb_prikazi.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { Class.forName("com.mysql.cj.jdbc.Driver"); Connection con=DriverManager.getConnection("jdbc:mysql://student.veleri.hr/mbukovic?serverTimezone=UTC", "mbukovic", "11"); Statement st=con.createStatement(); String sifra = sifra_evidencije.getText().toString(); String upit="SELECT sifra_evidencije, ukupni_sat_rada, mjesec_rada, godina_rada, iznos_place" + "FROM EM_Evidencija_radnog_sata WHERE sifra_evidencije= '" + sifra + "'"; ResultSet rs= st.executeQuery(upit); ResultSetMetaData rsmd=rs.getMetaData(); DefaultTableModel model=(DefaultTableModel) tablica.getModel(); int stupac=rsmd.getColumnCount(); String[] ime_stupca = new String[stupac]; for(int i=0; i<stupac; i++) { ime_stupca[i]=rsmd.getColumnName(i+1); } model.setColumnIdentifiers(ime_stupca); String sifra_evidencije, ukupni_sat_rada, mjesec_rada, godina_rada, iznos_place; while(rs.next()) { sifra_evidencije=rs.getString(1); ukupni_sat_rada=rs.getString(2); mjesec_rada=rs.getString(3); godina_rada=rs.getString(4); iznos_place=rs.getString(5); String[]red= {sifra_evidencije, ukupni_sat_rada, mjesec_rada, godina_rada, iznos_place}; model.addRow(red); } st.close(); con.close(); } catch (Exception e1) { JOptionPane.showMessageDialog(null, e1); } } }); gumb_prikazi.setForeground(Color.BLUE); gumb_prikazi.setFont(new Font("Tahoma", Font.BOLD, 14)); gumb_prikazi.setBounds(587, 135, 89, 23); frame.getContentPane().add(gumb_prikazi); JScrollPane scrollPane = new JScrollPane(); scrollPane.setBounds(34, 197, 700, 255); frame.getContentPane().add(scrollPane); tablica = new JTable(); tablica.setModel(new DefaultTableModel( new Object[][] { }, new String[] { "\u0160ifra evidencije", "Ukupni sat rada", "Mjesec rada", "Godina rada", "Iznos pla\u0107e" } )); scrollPane.setViewportView(tablica); tablica.setFont(new Font("Tahoma", Font.PLAIN, 12)); JButton gumb_obrisi = new JButton("Obriši"); gumb_obrisi.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { Class.forName("com.mysql.cj.jdbc.Driver"); Connection con=DriverManager.getConnection("jdbc:mysql://student.veleri.hr/mbukovic?serverTimezone=UTC", "mbukovic", "11"); String trazi = sifra_evidencije.getText().toString(); String upit="DELETE FROM EM_Evidencija_radnog_sata WHERE sifra_evidencije='"+trazi+"'"; PreparedStatement ps=con.prepareStatement(upit); int obrisi=ps.executeUpdate(); if (obrisi>0) JOptionPane.showMessageDialog(null,"Podaci su uspješno obrisani."); } catch (Exception e1) { System.out.println("Dogodila se greška!"); } } }); gumb_obrisi.setForeground(Color.BLUE); gumb_obrisi.setFont(new Font("Tahoma", Font.BOLD, 14)); gumb_obrisi.setBounds(564, 491, 89, 23); frame.getContentPane().add(gumb_obrisi); JButton gumb_natrag = new JButton("Natrag"); gumb_natrag.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Glavni_izbornik.main(null); frame.dispose(); } }); gumb_natrag.setForeground(Color.RED); gumb_natrag.setFont(new Font("Tahoma", Font.BOLD, 14)); gumb_natrag.setBounds(67, 491, 89, 23); frame.getContentPane().add(gumb_natrag); JLabel lblNewLabel_1 = new JLabel("Šifra evidencije:"); lblNewLabel_1.setFont(new Font("Tahoma", Font.PLAIN, 14)); lblNewLabel_1.setBounds(92, 132, 138, 29); frame.getContentPane().add(lblNewLabel_1); sifra_evidencije = new JTextField(); sifra_evidencije.setBounds(229, 134, 250, 29); frame.getContentPane().add(sifra_evidencije); sifra_evidencije.setColumns(10); } }*/ package evidencijaRadnika_EM; import java.awt.EventQueue; import java.awt.Font; import java.awt.Color; import java.sql.*; import javax.swing.*; import javax.swing.table.DefaultTableModel; public class Evidencija { private JFrame frame; private JTable tablica; private JTextField sifra_evidencije; public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { Evidencija window = new Evidencija(); window.frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } public Evidencija() { initialize(); } private void initialize() { frame = new JFrame(); frame.setBounds(100, 100, 777, 573); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().setLayout(null); JLabel lblNewLabel = new JLabel("EVIDENCIJA RADNIKA"); lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 20)); lblNewLabel.setBounds(250, 38, 250, 54); frame.getContentPane().add(lblNewLabel); JButton gumb_prikazi = new JButton("Prikaži"); gumb_prikazi.addActionListener(e -> { try { // Provjerite unos šifre evidencije String sifra = sifra_evidencije.getText().trim(); if (sifra.isEmpty()) { JOptionPane.showMessageDialog(frame, "Morate unijeti šifru evidencije!"); return; } // Povezivanje s bazom podataka i izvršavanje SQL upita try (Connection con = DriverManager.getConnection("jdbc:mysql://student.veleri.hr/mbukovic?serverTimezone=UTC", "mbukovic", "11"); Statement st = con.createStatement()) { String upit = "SELECT sifra_evidencije, ukupni_sat_rada, mjesec_rada, godina_rada, iznos_place " + "FROM EM_Evidencija_radnog_sata WHERE sifra_evidencije = '" + sifra + "'"; try (ResultSet rs = st.executeQuery(upit)) { ResultSetMetaData rsmd = rs.getMetaData(); DefaultTableModel model = (DefaultTableModel) tablica.getModel(); // Očistite postojeće redove u tabeli model.setRowCount(0); int stupac = rsmd.getColumnCount(); String[] ime_stupca = new String[stupac]; for (int i = 0; i < stupac; i++) { ime_stupca[i] = rsmd.getColumnName(i + 1); } model.setColumnIdentifiers(ime_stupca); // Dodajte redove u tablicu while (rs.next()) { String sifra_evidencije = rs.getString(1); String ukupni_sat_rada = rs.getString(2); String mjesec_rada = rs.getString(3); String godina_rada = rs.getString(4); String iznos_place = rs.getString(5); String[] red = {sifra_evidencije, ukupni_sat_rada, mjesec_rada, godina_rada, iznos_place}; model.addRow(red); } } } } catch (SQLException e1) { JOptionPane.showMessageDialog(frame, "Greška pri dohvaćanju podataka: " + e1.getMessage()); } }); gumb_prikazi.setForeground(Color.BLUE); gumb_prikazi.setFont(new Font("Tahoma", Font.BOLD, 14)); gumb_prikazi.setBounds(587, 135, 89, 23); frame.getContentPane().add(gumb_prikazi); JScrollPane scrollPane = new JScrollPane(); scrollPane.setBounds(34, 197, 700, 255); frame.getContentPane().add(scrollPane); tablica = new JTable(); tablica.setModel(new DefaultTableModel( new Object[][]{}, new String[]{"Šifra evidencije", "Ukupni sat rada", "Mjesec rada", "Godina rada", "Iznos plaće"} )); scrollPane.setViewportView(tablica); tablica.setFont(new Font("Tahoma", Font.PLAIN, 12)); JButton gumb_obrisi = new JButton("Obriši"); gumb_obrisi.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String sifra = sifra_evidencije.getText().trim(); if (sifra.isEmpty()) { JOptionPane.showMessageDialog(frame, "Morate unijeti šifru evidencije za brisanje!"); return; } try (Connection con = DriverManager.getConnection("jdbc:mysql://student.veleri.hr/mbukovic?serverTimezone=UTC", "mbukovic", "11")) { String upit = "DELETE FROM EM_Evidencija_radnog_sata WHERE sifra_evidencije = ?"; try (PreparedStatement ps = con.prepareStatement(upit)) { ps.setString(1, sifra); int obrisi = ps.executeUpdate(); if (obrisi > 0) { JOptionPane.showMessageDialog(frame, "Podaci su uspješno obrisani."); } else { JOptionPane.showMessageDialog(frame, "Nije pronađena evidencija s tom šifrom."); } } } catch (SQLException ex) { JOptionPane.showMessageDialog(frame, "Greška pri brisanju podataka: " + ex.getMessage()); } } }); gumb_obrisi.setForeground(Color.BLUE); gumb_obrisi.setFont(new Font("Tahoma", Font.BOLD, 14)); gumb_obrisi.setBounds(564, 491, 89, 23); frame.getContentPane().add(gumb_obrisi); JButton gumb_natrag = new JButton("Natrag"); gumb_natrag.addActionListener(e -> { Glavni_izbornik.main(null); frame.dispose(); }); gumb_natrag.setForeground(Color.RED); gumb_natrag.setFont(new Font("Tahoma", Font.BOLD, 14)); gumb_natrag.setBounds(67, 491, 89, 23); frame.getContentPane().add(gumb_natrag); JLabel lblNewLabel_1 = new JLabel("Šifra evidencije:"); lblNewLabel_1.setFont(new Font("Tahoma", Font.PLAIN, 14)); lblNewLabel_1.setBounds(92, 132, 138, 29); frame.getContentPane().add(lblNewLabel_1); sifra_evidencije = new JTextField(); sifra_evidencije.setBounds(229, 134, 250, 29); frame.getContentPane().add(sifra_evidencije); sifra_evidencije.setColumns(10); } }
Editor is loading...
Leave a Comment