Advertisement
Guest User

Untitled

a guest
Jun 24th, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.61 KB | None | 0 0
  1. package me.fabegabe.ranks.sql;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.PreparedStatement;
  6. import java.sql.ResultSet;
  7. import java.sql.SQLException;
  8. import java.util.UUID;
  9. import me.fabegabe.ranks.config.Config;
  10. import me.fabegabe.ranks.util.UUIDFetcher;
  11. import me.fabegabe.ranks.util.UUIDFetcher.Response;
  12. import org.bukkit.configuration.ConfigurationSection;
  13. import org.bukkit.configuration.file.FileConfiguration;
  14. import org.bukkit.entity.Player;
  15.  
  16. public class SQL
  17. {
  18. private Connection connection;
  19. private String address;
  20. private String username;
  21. private String password;
  22. private String database;
  23. private int port;
  24.  
  25. public SQL(Config config)
  26. {
  27. ConfigurationSection section = config.getConfig().getConfigurationSection("sql");
  28. this.address = section.getString("address");
  29. this.username = section.getString("username");
  30. this.password = section.getString("password");
  31. this.database = section.getString("database");
  32. this.port = section.getInt("port");
  33. }
  34.  
  35. public synchronized void connect()
  36. {
  37. try
  38. {
  39. Class.forName("com.mysql.jdbc.Driver");
  40. this.connection = DriverManager.getConnection("jdbc:mysql://" + this.address + ":" + this.port + "/" + this.database,
  41. this.username, this.password);
  42. }
  43. catch (Exception e)
  44. {
  45. e.printStackTrace();
  46. }
  47. }
  48.  
  49. public synchronized void disconnect()
  50. {
  51. try
  52. {
  53. this.connection.close();
  54. }
  55. catch (SQLException e)
  56. {
  57. e.printStackTrace();
  58. }
  59. }
  60.  
  61. public PreparedStatement prepare(String query)
  62. {
  63. try
  64. {
  65. return this.connection.prepareStatement(query);
  66. }
  67. catch (SQLException e)
  68. {
  69. e.printStackTrace();
  70. }
  71. return null;
  72. }
  73.  
  74. public synchronized boolean containsPlayer(Player p)
  75. {
  76. try
  77. {
  78. UUID uuid = UUIDFetcher.getResponse(p.getName()).uuid;
  79. PreparedStatement ps = prepare("SELECT * FROM `users` WHERE uuid=?;");
  80. ps.setString(1, uuid.toString());
  81. ResultSet set = ps.executeQuery();
  82. boolean contains = set.next();
  83. set.close();
  84. ps.close();
  85. return contains;
  86. }
  87. catch (Exception e)
  88. {
  89. e.printStackTrace();
  90. }
  91. return false;
  92. }
  93.  
  94. public synchronized boolean containsPlayer(String name)
  95. {
  96. try
  97. {
  98. UUID uuid = UUIDFetcher.getResponse(name).uuid;
  99. PreparedStatement ps = prepare("SELECT * FROM `users` WHERE uuid=?;");
  100. ps.setString(1, uuid.toString());
  101. ResultSet set = ps.executeQuery();
  102. boolean contains = set.next();
  103. set.close();
  104. ps.close();
  105. return contains;
  106. }
  107. catch (Exception e)
  108. {
  109. e.printStackTrace();
  110. }
  111. return false;
  112. }
  113.  
  114. public synchronized void registerPlayer(Player p)
  115. {
  116. if (containsPlayer(p)) {
  117. return;
  118. }
  119. try
  120. {
  121. UUID uuid = UUIDFetcher.getResponse(p.getName()).uuid;
  122. PreparedStatement ps = prepare("INSERT INTO `users` values(?,0,1000,1);");
  123. ps.setString(1, uuid.toString());
  124. ps.execute();
  125. ps.close();
  126. }
  127. catch (Exception e)
  128. {
  129. e.printStackTrace();
  130. }
  131. }
  132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement