Advertisement
Guest User

Untitled

a guest
Nov 16th, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.50 KB | None | 0 0
  1. package ru.rsreu.koklyukov.filesharing.datalayer;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.ResultSet;
  6. import java.sql.SQLException;
  7. import java.sql.Statement;
  8. import java.util.ArrayList;
  9. import java.util.List;
  10. import java.util.Locale;
  11. import ru.rsreu.koklyukov.filesharing.File;
  12. import ru.rsreu.koklyukov.filesharing.User;
  13. import ru.rsreu.koklyukov.filesharing.UserGroups;
  14.  
  15. public class OracleDAO {
  16.    
  17.     private static Connection con;
  18.     private static Statement st;
  19.    
  20.     private OracleDAO() {
  21.     }
  22.    
  23.     private static void Connect() {
  24.         Locale.setDefault(Locale.ENGLISH);
  25.         try {
  26.             Class.forName("oracle.jdbc.driver.OracleDriver");
  27.         } catch (ClassNotFoundException e1) {
  28.             e1.printStackTrace();
  29.         }
  30.         String url = "jdbc:oracle:thin:@localhost:1521:xe";
  31.         String user = "UserJavaProject";
  32.         String password = "root";
  33.         try {
  34.             con = DriverManager.getConnection(url, user, password);
  35.             //System.out.println("Connected!!");
  36.         } catch (SQLException e) {
  37.             e.printStackTrace();
  38.         }
  39.     }
  40.    
  41.     private static void Disconnect() {
  42.         try {
  43.             st.close();
  44.             con.close();
  45.         } catch (SQLException e) {
  46.             e.printStackTrace();
  47.         }
  48.     }
  49.    
  50.     public static void addUser(User user) {
  51.  
  52.         Connect();
  53.         try {
  54.             st = con.createStatement();
  55.             String query = String.format("INSERT INTO USERS (ID, UserGroup, NAME, PASSWORD) VALUES(%d, '%s', '%s', '%s')",
  56.                     user.getID(), user.getGroup(), user.getName(), user.getPassword());
  57.             st.executeUpdate(query);
  58.         } catch (SQLException e) {
  59.             e.printStackTrace();
  60.         } finally {
  61.             Disconnect();
  62.         }
  63.     }
  64.  
  65.     public static void editUser(User user) {
  66.         Connect();
  67.         try {
  68.             st = con.createStatement();
  69.             String query = String.format("UPDATE USERS SET UserGroup = '%s', NAME = '%s', PASSWORD = '%s' WHERE ID = %d",
  70.                     user.getGroup(), user.getName(), user.getPassword(), user.getID());
  71.             st.executeUpdate(query);
  72.         } catch (SQLException e) {
  73.             e.printStackTrace();
  74.         } finally {
  75.             Disconnect();
  76.         }
  77.     }
  78.    
  79.     public static void deleteUser(User user) {
  80.         Connect();
  81.         try {
  82.             st = con.createStatement();
  83.             String query = String.format("DELETE FROM USERS WHERE ID = %d",
  84.                     user.getID());
  85.             st.executeUpdate(query);
  86.         } catch (SQLException e) {
  87.             e.printStackTrace();
  88.         } finally {
  89.             Disconnect();
  90.         }
  91.     }
  92.    
  93.     public static List<User> getUsers() {
  94.         Connect();
  95.         List<User> listUsers = new ArrayList<User>();
  96.         try {
  97.             st = con.createStatement();
  98.             ResultSet rs = st.executeQuery("SELECT * FROM USERS");
  99.             while(rs.next()) {
  100.                 int ID = rs.getInt("ID");
  101.                 String name = rs.getString("NAME");
  102.                 String password = rs.getString("PASSWORD");
  103.                 String groupString = rs.getString("UserGroup");
  104.                 User user = new User(name, password);
  105.                 user.setID(ID);
  106.                 UserGroups userGroup = UserGroups.getGroup(groupString);
  107.                 user.setGroup(userGroup);
  108.                 listUsers.add(user);
  109.             }
  110.         } catch (SQLException e) {
  111.             e.printStackTrace();
  112.         }
  113.         finally {
  114.             Disconnect();
  115.         }
  116.         return listUsers;
  117.     }
  118.    
  119.     public static void addFile(File file) {
  120.  
  121.         Connect();
  122.         try {
  123.             st = con.createStatement();
  124.             String query = String.format("INSERT INTO FILES (ID, NAME, DESCRIPTION, FileSize, UserUploaded, DownloadsCount)" +
  125.                     "VALUES(%d, '%s', '%s', %d, %d, %d)",
  126.                     file.getID(), file.getName(), file.getDescription(), file.getSize(),
  127.                     file.getUserUploaded(), file.getDownloadsCount());
  128.             st.executeUpdate(query);
  129.         } catch (SQLException e) {
  130.             e.printStackTrace();
  131.         } finally {
  132.             Disconnect();
  133.         }
  134.     }
  135. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement