Advertisement
Guest User

Untitled

a guest
Mar 13th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.61 KB | None | 0 0
  1. package qmaks.anticheat;
  2.  
  3. import java.util.HashMap;
  4. import java.sql.ResultSet;
  5. import java.sql.Connection;
  6. import java.sql.DriverManager;
  7. import java.sql.PreparedStatement;
  8. import org.bukkit.plugin.java.JavaPlugin;
  9. import org.bukkit.configuration.file.FileConfiguration;
  10.  
  11. /**
  12.  *
  13.  * @author Анатолий
  14.  */
  15. public class Database {
  16.  
  17.     static HashMap<String, PreparedStatement> preparedStatements = new HashMap<String, PreparedStatement>();
  18.  
  19.     public Database(JavaPlugin pluginInstance) {
  20.         try {
  21.             FileConfiguration config = pluginInstance.getConfig();
  22.             Class.forName("com.mysql.jdbc.Driver");
  23.             Connection connection = DriverManager.getConnection("jdbc:mysql://" + config.getString("url"), config.getString("username"), config.getString("password"));
  24.  
  25.             preparedStatements.put("addScreenshot",
  26.                     connection.prepareStatement(
  27.                             "INSERT INTO `" + config.getString("table") + "` (player, screenshots) VALUES (?,?)"
  28.                             + " ON DUPLICATE KEY "
  29.                             + "UPDATE screenshots = IF(player=?,CONCAT(screenshots,?),screenshots);"));
  30.             preparedStatements.put("getScreenshots", connection.prepareStatement("SELECT screenshots FROM " + config.getString("table") + " WHERE player=?;"));
  31.         } catch (Exception ex) {
  32.             ex.printStackTrace();
  33.         }
  34.     }
  35.  
  36.     public void addScreenshot(String player, String screenID) {
  37.         PreparedStatement addScreenshot = preparedStatements.get("addScreenshot");
  38.  
  39.         try {
  40.             addScreenshot.setString(1, player);
  41.             addScreenshot.setString(2, screenID);
  42.             addScreenshot.setString(3, player);
  43.             addScreenshot.setString(4, ";" +screenID);
  44.  
  45.             addScreenshot.executeUpdate();
  46.         } catch (Exception ex) {
  47.             ex.printStackTrace();
  48.         }
  49.     }
  50.  
  51.     public String getScreenshots(String player) {
  52.         PreparedStatement getScreenshots = preparedStatements.get("getScreenshots");
  53.  
  54.         ResultSet rs = null;
  55.         try {
  56.             getScreenshots.setString(1, player);
  57.  
  58.             rs = getScreenshots.executeQuery();
  59.             while (rs.next()) {
  60.                 return rs.getString("screenshots");
  61.             }
  62.         } catch (Exception ex) {
  63.             ex.printStackTrace();
  64.         } finally {
  65.             if (rs != null) {
  66.                 try {
  67.                     rs.close();
  68.                 } catch (Exception ex) {
  69.                     ex.printStackTrace();
  70.                 }
  71.             }
  72.         }
  73.         return "";
  74.     }
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement