Advertisement
Mixon

SQL Database in Java

Nov 21st, 2016
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.43 KB | None | 0 0
  1. package podaci;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.PreparedStatement;
  6. import java.sql.ResultSet;
  7. import java.util.HashMap;
  8.  
  9. import javax.swing.JFrame;
  10. import javax.swing.JOptionPane;
  11.  
  12.  
  13. public abstract class Baze
  14. {  
  15.     private static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
  16.     private static final String DB_URL = "jdbc:mysql://localhost:3306/skola";
  17.     private static final String USER = "root";
  18.     private static final String PASS = "12345";
  19.    
  20.     private static Connection conn = null;
  21.     private static java.sql.Statement stmt = null;
  22.     private static ResultSet rs = null;
  23.     private static PreparedStatement preparedStatement = null;
  24.    
  25.     private static void close()
  26.     {
  27.         try
  28.         {
  29.             if(conn != null)
  30.             {
  31.                 conn.close();
  32.             }
  33.            
  34.             if(stmt != null)
  35.             {
  36.                 conn.close();
  37.             }
  38.            
  39.             if(rs != null)
  40.             {
  41.                 rs.close();
  42.             }
  43.            
  44.             if(preparedStatement != null)
  45.             {
  46.                 preparedStatement.close();
  47.             }
  48.         }
  49.         catch(Exception e)
  50.         {
  51.             e.printStackTrace();
  52.         }
  53.     }
  54.    
  55.     private static void start(boolean ind, String sql)
  56.     {
  57.         try
  58.         {
  59.             conn = DriverManager.getConnection(DB_URL, USER, PASS);
  60.             stmt = conn.createStatement();
  61.             if(ind == true)
  62.             {
  63.                 rs = stmt.executeQuery(sql);
  64.             }
  65.             else
  66.             {
  67.                 preparedStatement = conn.prepareStatement(sql);
  68.             }
  69.         }
  70.         catch(Exception e)
  71.         {
  72.             e.printStackTrace();
  73.             JOptionPane.showMessageDialog(new JFrame(), "Nemoguca konencija sa bazom!", "Greška", JOptionPane.ERROR_MESSAGE);
  74.             System.exit(0);
  75.         }
  76.     }
  77.    
  78.     public static HashMap<Integer, Ucenik> iscitaj()
  79.     {
  80.         HashMap<Integer, Ucenik> mapa = new HashMap<Integer, Ucenik>();
  81.         try
  82.         {
  83.             Class.forName(JDBC_DRIVER);
  84.            
  85.             String sql = "select ucenik.idUcenik, ucenik.ime, ucenik.prezime, ucenik.prosek, ucenik.datumRodjenja, ucenik.mestoRodjenja, ucenik.status from ucenik";
  86.             start(true, sql);
  87.            
  88.             while(rs.next())
  89.             {
  90.                 int id = rs.getInt("ucenik.idUcenik");
  91.                 String ime = rs.getString("ucenik.ime");
  92.                 String prezime = rs.getString("ucenik.prezime");
  93.                 double prosek = rs.getDouble("ucenik.prosek");
  94.                 String datumRodjenja = rs.getString("ucenik.datumRodjenja");
  95.                 String mestoRodjenja = rs.getString("ucenik.mestoRodjenja");
  96.                 int status = rs.getInt("ucenik.status");
  97.                
  98.                 mapa.put(id, new Ucenik(ime, prezime, prosek, datumRodjenja, mestoRodjenja, status));
  99.             }
  100.         }
  101.         catch(Exception e)
  102.         {
  103.             e.printStackTrace();
  104.         }
  105.         finally
  106.         {
  107.             close();
  108.         }
  109.        
  110.         return mapa;
  111.     }
  112.    
  113.     public static void upisi(Ucenik u)
  114.     {  
  115.         try
  116.         {
  117.             Class.forName(JDBC_DRIVER);
  118.            
  119.             String sql = "insert into ucenik(ucenik.ime, ucenik.prezime, ucenik.prosek, ucenik.datumRodjenja, ucenik.mestoRodjenja, ucenik.status) values(?, ?, ?, ?, ?, ?)";
  120.             start(false, sql);
  121.            
  122.             preparedStatement.setString(1, u.getIme());
  123.             preparedStatement.setString(2, u.getPrezime());
  124.             preparedStatement.setDouble(3, u.getProsek());
  125.             preparedStatement.setString(4, u.getDatum());
  126.             preparedStatement.setString(5, u.getMesto());
  127.             preparedStatement.setInt(6, u.getStatus());
  128.            
  129.             preparedStatement.execute();
  130.         }
  131.         catch(Exception e)
  132.         {
  133.             e.printStackTrace();
  134.         }
  135.         finally
  136.         {
  137.             close();
  138.         }
  139.     }
  140.    
  141.     public static void izmeni(HashMap.Entry<Integer, Ucenik> par)
  142.     {  
  143.         try
  144.         {
  145.             Class.forName(JDBC_DRIVER);
  146.            
  147.                 String sql = "update ucenik set ime = ?, prezime = ?, prosek = ?, datumRodjenja = ?, mestoRodjenja = ?, status = ? where idUcenik = ?";
  148.                 start(false, sql);
  149.                
  150.                 preparedStatement.setString(1, par.getValue().getIme());
  151.                 preparedStatement.setString(2, par.getValue().getPrezime());
  152.                 preparedStatement.setDouble(3, par.getValue().getProsek());
  153.                 preparedStatement.setString(4, par.getValue().getDatum());
  154.                 preparedStatement.setString(5, par.getValue().getMesto());
  155.                 preparedStatement.setInt(6, par.getValue().getStatus());
  156.                
  157.                 preparedStatement.setInt(7, par.getKey());
  158.                 preparedStatement.execute();
  159.         }
  160.         catch(Exception e)
  161.         {
  162.             e.printStackTrace();
  163.         }
  164.         finally
  165.         {
  166.             close();
  167.         }  
  168.     }
  169.    
  170.     public static void obrisi(HashMap.Entry<Integer, Ucenik> par)
  171.     {  
  172.         try
  173.         {
  174.             Class.forName(JDBC_DRIVER);
  175.            
  176.             String sql = "delete from ucenik where idUcenik = ?";
  177.             start(false, sql);
  178.            
  179.             preparedStatement.setInt(1, par.getKey());
  180.             preparedStatement.execute();
  181.         }
  182.         catch(Exception e)
  183.         {
  184.             e.printStackTrace();
  185.         }
  186.         finally
  187.         {
  188.             close();
  189.         }
  190.     }
  191. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement