Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package paket;
- import java.awt.EventQueue;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.util.HashMap;
- import javax.swing.DefaultListModel;
- import javax.swing.JButton;
- import javax.swing.JFrame;
- import javax.swing.JLabel;
- import javax.swing.JList;
- import javax.swing.JOptionPane;
- import javax.swing.JScrollPane;
- import javax.swing.JTextField;
- import paket1.Polaznik;
- public class Prozor {
- private JFrame frame;
- private JTextField textField;
- private JTextField textField_1;
- private JTextField textField_2;
- private JTextField textField_3;
- private JTextField textField_4;
- private JTextField textField_5;
- private JButton btnNazad;
- private JButton btnNapred;
- private JButton btnNovi;
- private JButton btnDodaj;
- private JButton btnIzmeni;
- private JButton btnObrisi;
- private JButton btnRedovni;
- private JButton btnVandredni;
- private JButton btnSvi;
- private JLabel label;
- private JLabel label_1;
- private JLabel label_2;
- private JLabel lblMestoRodjenja_1;
- private JLabel lblDatumRodjenja_1;
- private JLabel label_5;
- private DefaultListModel<Polaznik> model;
- private JList<Polaznik> list;
- static HashMap<Integer, Polaznik> hm = new HashMap<Integer, Polaznik>();
- static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
- static final String DB_URL = "jdbc:mysql://localhost:3306/school";
- static final String USER = "root";
- static final String PASS = "12345";
- public static boolean novi = false;
- public static boolean izmena = false;
- /**
- * Launch the application.
- */
- public static void main(String[] args) {
- Connection conn = null;
- java.sql.Statement stmt = null;
- try {
- Class.forName("com.mysql.jdbc.Driver");
- conn = DriverManager.getConnection(DB_URL, USER, PASS);
- stmt = conn.createStatement();
- String sql;
- sql = "Select * from polaznik";
- ResultSet rs = stmt.executeQuery(sql);
- while(rs.next()){
- int id = rs.getInt("ID");
- String Ime = rs.getString("Ime");
- String Prezime = rs.getString("Prezime");
- float Prosek = rs.getFloat("Prosek");
- String DatumRodjenja = rs.getDate("DatumRodjenja").toString();
- String MestoRodjenja = rs.getString("MestoRodjenja");
- int Status = rs.getInt("Status");
- Polaznik polaznik = new Polaznik(Ime,Prezime,Prosek,DatumRodjenja,MestoRodjenja,Status);
- hm.put(id, polaznik);
- }
- rs.close();
- stmt.close();
- conn.close();
- }catch(Exception ex) {
- System.out.println(ex.toString());
- }
- EventQueue.invokeLater(new Runnable() {
- public void run() {
- try {
- Prozor window = new Prozor();
- window.frame.setVisible(true);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- });
- }
- /**
- * Create the application.
- */
- public Prozor() {
- initialize();
- }
- /**
- * Initialize the contents of the frame.
- */
- private void initialize() {
- frame = new JFrame();
- frame.setBounds(100, 100, 846, 476);
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.getContentPane().setLayout(null);
- JLabel lblNewLabel = new JLabel("Ime");
- lblNewLabel.setBounds(29, 21, 67, 14);
- frame.getContentPane().add(lblNewLabel);
- JLabel lblPrezime = new JLabel("Prezime");
- lblPrezime.setBounds(29, 46, 67, 14);
- frame.getContentPane().add(lblPrezime);
- JLabel lblProsek = new JLabel("Prosek");
- lblProsek.setBounds(29, 69, 67, 14);
- frame.getContentPane().add(lblProsek);
- JLabel lblDatumRodjenja = new JLabel("Mesto rodjenja");
- lblDatumRodjenja.setBounds(29, 94, 101, 14);
- frame.getContentPane().add(lblDatumRodjenja);
- JLabel lblMestoRodjenja = new JLabel("Datum rodjenja");
- lblMestoRodjenja.setBounds(29, 119, 101, 14);
- frame.getContentPane().add(lblMestoRodjenja);
- JLabel lblStatus = new JLabel("Status");
- lblStatus.setBounds(29, 144, 83, 14);
- frame.getContentPane().add(lblStatus);
- textField = new JTextField();
- textField.setBounds(132, 18, 86, 20);
- frame.getContentPane().add(textField);
- textField.setColumns(10);
- textField_1 = new JTextField();
- textField_1.setColumns(10);
- textField_1.setBounds(132, 43, 86, 20);
- frame.getContentPane().add(textField_1);
- textField_2 = new JTextField();
- textField_2.setColumns(10);
- textField_2.setBounds(132, 66, 86, 20);
- frame.getContentPane().add(textField_2);
- textField_3 = new JTextField();
- textField_3.setColumns(10);
- textField_3.setBounds(132, 91, 86, 20);
- frame.getContentPane().add(textField_3);
- textField_4 = new JTextField();
- textField_4.setColumns(10);
- textField_4.setBounds(132, 116, 86, 20);
- frame.getContentPane().add(textField_4);
- textField_5 = new JTextField();
- textField_5.setColumns(10);
- textField_5.setBounds(132, 141, 86, 20);
- frame.getContentPane().add(textField_5);
- btnNazad = new JButton("Nazad");
- btnNazad.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent arg0) {
- }
- });
- btnNazad.setBounds(29, 190, 89, 23);
- frame.getContentPane().add(btnNazad);
- btnNapred = new JButton("Napred");
- btnNapred.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- }
- });
- btnNapred.setBounds(145, 190, 89, 23);
- frame.getContentPane().add(btnNapred);
- btnNovi = new JButton("Novi");
- btnNovi.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent arg0) {
- textField.setEditable(true);
- textField_1.setEditable(true);
- textField_2.setEditable(true);
- textField_3.setEditable(true);
- textField_4.setEditable(true);
- textField_5.setEditable(true);
- novi = true;
- btnObrisi.setEnabled(false);
- btnNazad.setEnabled(false);
- btnIzmeni.setEnabled(false);
- btnNapred.setEnabled(false);
- btnNovi.setEnabled(false);
- btnDodaj.setEnabled(true);
- }
- });
- btnNovi.setBounds(259, 190, 89, 23);
- frame.getContentPane().add(btnNovi);
- btnDodaj = new JButton("Dodaj");
- btnDodaj.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- if(novi == true)
- {
- String ime = textField.getText();
- String prezime = textField_1.getText();
- float prosek = Float.parseFloat(textField_2.getText());
- String datumRodjenja = textField_3.getText();
- String mestoRodjenja = textField_4.getText();
- int status = Integer.parseInt(textField_5.getText());
- Polaznik polaznik = new Polaznik(ime, prezime, prosek, datumRodjenja, mestoRodjenja,status);
- int duzina = hm.size() + 1;
- hm.put(duzina, polaznik);
- Connection conn = null;
- java.sql.Statement stmt = null;
- try {
- Class.forName("com.mysql.jdbc.Driver");
- conn = DriverManager.getConnection(DB_URL, USER, PASS);
- stmt = conn.createStatement();
- String query = "insert into polaznik values( ?,?, ?, ?, ?,?,?)";
- PreparedStatement preparedStmt = (PreparedStatement) conn.prepareStatement(query);
- preparedStmt.setInt(1, duzina);
- preparedStmt.setString(2, ime);
- preparedStmt.setString(3, prezime);
- preparedStmt.setDouble(4, prosek);
- preparedStmt.setString(5, datumRodjenja);
- preparedStmt.setString(6, mestoRodjenja);
- preparedStmt.setInt(7, status);
- preparedStmt.execute();
- stmt.close();
- conn.close();
- }catch(Exception ex) {
- System.out.println(ex.toString());
- }
- textField.setEditable(true);
- textField_1.setEditable(true);
- textField_2.setEditable(true);
- textField_3.setEditable(true);
- textField_4.setEditable(true);
- textField_5.setEditable(true);
- novi = false;
- btnObrisi.setEnabled(true);
- btnNazad.setEnabled(true);
- btnIzmeni.setEnabled(true);
- btnNapred.setEnabled(true);
- btnNovi.setEnabled(true);
- btnDodaj.setEnabled(false);
- }
- if(izmena == true)
- {
- int index = list.getSelectedIndex();
- hm.get(index).setIme(textField.getText());
- hm.get(index).setPrezime(textField_1.getText());
- hm.get(index).setProsek(Float.parseFloat(textField_2.getText()));
- hm.get(index).setDatumRodjenja(textField_3.getText());
- hm.get(index).setMestoRodjenja(textField_4.getText());
- hm.get(index).setStatus(Integer.parseInt(textField_5.getText()));
- Connection conn = null;
- java.sql.Statement stmt = null;
- try {
- Class.forName("com.mysql.jdbc.Driver");
- conn = DriverManager.getConnection(DB_URL, USER, PASS);
- stmt = conn.createStatement();
- String query = "update polaznik set Ime = ?, Prezime = ?, Prosek = ?, DatumRodjenja = ?, MestoRodjenja = ?, Status = ? where ID = ?";
- PreparedStatement preparedStmt = (PreparedStatement) conn.prepareStatement(query);
- preparedStmt.setString(1, hm.get(index).getIme());
- preparedStmt.setString(2, hm.get(index).getPrezime());
- preparedStmt.setDouble(3, hm.get(index).getProsek());
- preparedStmt.setString(4, hm.get(index).getDatumRodjenja());
- preparedStmt.setString(5, hm.get(index).getMestoRodjenja());
- preparedStmt.setInt(6, hm.get(index).getStatus());
- preparedStmt.setInt(7, index);
- preparedStmt.execute();
- stmt.close();
- conn.close();
- }catch(Exception ex) {
- System.out.println(ex.toString());
- }
- textField.setEditable(true);
- textField_1.setEditable(true);
- textField_2.setEditable(true);
- textField_3.setEditable(true);
- textField_4.setEditable(true);
- textField_5.setEditable(true);;
- novi = false;
- btnObrisi.setEnabled(true);
- btnNazad.setEnabled(true);
- btnIzmeni.setEnabled(true);
- btnNapred.setEnabled(true);
- btnNovi.setEnabled(true);
- btnDodaj.setEnabled(false);
- }
- textField.setText("");
- textField_1.setText("");
- textField_2.setText("");
- textField_3.setText("");
- textField_4.setText("");
- textField_5.setText("");
- }
- });
- btnDodaj.setBounds(368, 190, 89, 23);
- frame.getContentPane().add(btnDodaj);
- btnIzmeni = new JButton("Izmeni");
- btnIzmeni.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- try{
- int index = list.getSelectedIndex()+1;
- textField.setEditable(true);
- textField_1.setEditable(true);
- textField_2.setEditable(true);
- textField_3.setEditable(true);
- textField_4.setEditable(true);
- textField_5.setEditable(true);
- izmena = true;
- btnObrisi.setEnabled(false);
- btnNazad.setEnabled(false);
- btnIzmeni.setEnabled(false);
- btnNapred.setEnabled(false);
- btnNovi.setEnabled(false);
- btnDodaj.setEnabled(true);
- textField.setText(hm.get(index).getIme());
- textField_1.setText(hm.get(index).getPrezime());
- float prosek = hm.get(index).getProsek();
- textField_2.setText(String.valueOf(prosek));
- textField_3.setText(hm.get(index).getDatumRodjenja());
- textField_4.setText(hm.get(index).getMestoRodjenja());
- textField_5.setText(String.valueOf(hm.get(index).getStatus()));
- }catch(Exception ex)
- {
- JOptionPane.showMessageDialog(frame, "Morate izabrati red koji zelite da izmenite.");
- izmena = false;
- btnObrisi.setEnabled(true);
- btnNazad.setEnabled(true);
- btnIzmeni.setEnabled(true);
- btnNapred.setEnabled(true);
- btnNovi.setEnabled(true);
- btnDodaj.setEnabled(true);
- }
- }
- });
- btnIzmeni.setBounds(483, 190, 89, 23);
- frame.getContentPane().add(btnIzmeni);
- btnObrisi = new JButton("Obrisi");
- btnObrisi.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- int index = list.getSelectedIndex();
- hm.remove(index);
- model = new DefaultListModel<Polaznik>();
- for(int i = 1; i < hm.size(); i++)
- {
- model.addElement(hm.get(i));
- }
- list.setModel(model);
- Connection conn = null;
- java.sql.Statement stmt = null;
- try {
- Class.forName("com.mysql.jdbc.Driver");
- conn = DriverManager.getConnection(DB_URL, USER, PASS);
- stmt = conn.createStatement();
- String query = "delete from polaznik where id = ?";
- PreparedStatement preparedStmt = (PreparedStatement) conn.prepareStatement(query);
- preparedStmt.setInt(1, index);
- preparedStmt.execute();
- stmt.close();
- conn.close();
- }catch(Exception ex) {
- System.out.println(ex.toString());
- }
- }
- });
- btnObrisi.setBounds(602, 190, 89, 23);
- frame.getContentPane().add(btnObrisi);
- btnRedovni = new JButton("Redovni");
- btnRedovni.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- }
- });
- btnRedovni.setBounds(602, 21, 101, 23);
- frame.getContentPane().add(btnRedovni);
- btnVandredni = new JButton("Vandredni");
- btnVandredni.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent arg0) {
- }
- });
- btnVandredni.setBounds(602, 65, 101, 23);
- frame.getContentPane().add(btnVandredni);
- btnSvi = new JButton("Svi");
- btnSvi.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent arg0) {
- model = new DefaultListModel<Polaznik>();
- model.clear();
- for(int i = 1; i <= hm.size();i++)
- {
- model.addElement(hm.get(i));
- }
- list.setModel(model);
- }
- });
- btnSvi.setBounds(602, 115, 101, 23);
- frame.getContentPane().add(btnSvi);
- label = new JLabel("Ime");
- label.setBounds(45, 239, 67, 14);
- frame.getContentPane().add(label);
- label_1 = new JLabel("Prezime");
- label_1.setBounds(100, 239, 67, 14);
- frame.getContentPane().add(label_1);
- label_2 = new JLabel("Prosek");
- label_2.setBounds(194, 239, 67, 14);
- frame.getContentPane().add(label_2);
- lblMestoRodjenja_1 = new JLabel("Mesto rodjenja");
- lblMestoRodjenja_1.setBounds(259, 239, 113, 14);
- frame.getContentPane().add(lblMestoRodjenja_1);
- lblDatumRodjenja_1 = new JLabel("Datum rodjenja");
- lblDatumRodjenja_1.setBounds(382, 239, 101, 14);
- frame.getContentPane().add(lblDatumRodjenja_1);
- label_5 = new JLabel("Status");
- label_5.setBounds(493, 239, 83, 14);
- frame.getContentPane().add(label_5);
- JScrollPane scrollPane = new JScrollPane();
- scrollPane.setBounds(29, 282, 540, 104);
- frame.getContentPane().add(scrollPane);
- list = new JList<Polaznik>();
- scrollPane.setViewportView(list);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement