Advertisement
Guest User

Untitled

a guest
Nov 11th, 2018
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.19 KB | None | 0 0
  1. package net.SkyUltimate.Skyblock_Economy.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.  
  9. import org.bukkit.Bukkit;
  10. import org.bukkit.entity.Player;
  11.  
  12. import net.SkyUltimate.Skyblock_Economy.Economy;
  13.  
  14. public class SqlConnection {
  15.  
  16. private Connection connection;
  17. private String urlbase,host,database,user,pass;
  18.  
  19. public SqlConnection(String urlbase, String host, String database, String user, String pass) {
  20. this.urlbase = urlbase;
  21. this.host = host;
  22. this.database = database;
  23. this.user = user;
  24. this.pass = pass;
  25. }
  26.  
  27. public void connection(){
  28. if(!isConnected()){
  29. try {
  30. connection = DriverManager.getConnection(urlbase + host + "/" + database + "?autoReconnect=true&useSSL=false", user, pass);
  31. Bukkit.getLogger().warning("SQL Skyblock_Economy connection ready !");
  32. } catch (SQLException e) {
  33. e.printStackTrace();
  34. }
  35. }
  36. }
  37.  
  38. public void disconnect(){
  39. if(isConnected()){
  40. try {
  41. connection.close();
  42. Bukkit.getLogger().warning("SQL Skyblock_Economy connection closed !");
  43. } catch (SQLException e) {
  44. e.printStackTrace();
  45. }
  46. }
  47. }
  48.  
  49. public boolean isConnected(){
  50. return connection != null;
  51. }
  52.  
  53. public void createBalanceTable(){
  54. try {
  55. PreparedStatement rs1 = connection.prepareStatement("CREATE TABLE IF NOT EXISTS `PlayersBalances` (`id` int(11) NOT NULL, `PlayerUUID` varchar(255) NOT NULL, `PlayerName` varchar(30) NOT NULL, `Balance` double NOT NULL DEFAULT '0') ENGINE=InnoDB DEFAULT CHARSET=latin1;");
  56. rs1.executeUpdate();
  57. rs1.close();
  58. PreparedStatement rs2 = connection.prepareStatement("ALTER TABLE `PlayersBalances` ADD PRIMARY KEY (`id`);");
  59. rs2.executeUpdate();
  60. rs2.close();
  61. PreparedStatement rs3 = connection.prepareStatement("ALTER TABLE `PlayersBalances`MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;");
  62. rs3.executeUpdate();
  63. rs3.close();
  64. Bukkit.getLogger().warning("Creating Balances Table !");
  65. } catch (SQLException e) {
  66. }
  67. }
  68.  
  69. public void isPlayerExist(Player player){
  70. try {
  71. PreparedStatement q = connection.prepareStatement("SELECT ? FROM `PlayersBalances` WHERE PlayerUUID = ?");
  72. q.setString(1, player.getUniqueId().toString());
  73. q.setString(2, player.getUniqueId().toString());
  74. ResultSet rs = q.executeQuery();
  75. boolean isPlayerExist = rs.next();
  76. q.close();
  77. if(isPlayerExist == false) {
  78. registerPlayer(player);
  79. }
  80. } catch (SQLException e) {
  81. }
  82. }
  83.  
  84. public void registerPlayer(Player player){
  85. try {
  86. PreparedStatement rs = connection.prepareStatement("INSERT INTO `PlayersBalances`(`playeruuid`, `playername`) VALUES (?, ?)");
  87. rs.setString(1, player.getUniqueId().toString());
  88. rs.setString(2, player.getName());
  89. rs.executeUpdate();
  90. rs.close();
  91. } catch (SQLException e) {
  92. e.printStackTrace();
  93. }
  94. }
  95.  
  96. public void updatePlayerBalance(Player player){
  97. try {
  98. PreparedStatement rs = connection.prepareStatement("UPDATE `PlayersBalances` SET `balance`=? WHERE `playeruuid` = ?");
  99. rs.setLong(1, Economy.getInstance().getPlayerBalances().get(player.getUniqueId().toString()));
  100. rs.setString(2, player.getUniqueId().toString());
  101. rs.executeUpdate();
  102. rs.close();
  103. } catch (SQLException e) {
  104. e.printStackTrace();
  105. }
  106. }
  107.  
  108. public Long getPlayerBalance(Player player) {
  109. long playerBalance = 0;
  110. try {
  111. PreparedStatement q = connection.prepareStatement("SELECT `balance` PlayersBalances `Players` WHERE `playeruuid` = ?");
  112. q.setString(1, player.getUniqueId().toString());
  113. ResultSet rs = q.executeQuery();
  114. while(rs.next()){
  115. playerBalance = rs.getLong("playerBalance");
  116. }
  117. q.close();
  118. return playerBalance;
  119. } catch (SQLException e) {
  120. e.printStackTrace();
  121. }
  122. return playerBalance;
  123. }
  124.  
  125. public void setPlayerBalance(Player player, long balance){
  126. try {
  127. PreparedStatement rs = connection.prepareStatement("UPDATE `PlayersBalances` SET `balance`=? WHERE `playeruuid` = ?");
  128. rs.setLong(1, balance);
  129. rs.setString(2, player.getUniqueId().toString());
  130. rs.executeUpdate();
  131. rs.close();
  132. } catch (SQLException e) {
  133. e.printStackTrace();
  134. }
  135. }
  136. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement