Guest User

Untitled

a guest
Aug 16th, 2016
25
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.03 KB | None | 0 0
  1. package fr.frinka.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.entity.Player;
  10.  
  11. public class SqlConnection {
  12.  
  13. private Connection connection;
  14. private String urlbase, host, database, user, pass;
  15.  
  16. public SqlConnection(String urlbase, String host, String database, String user, String pass) {
  17. this.urlbase = urlbase;
  18. this.host = host;
  19. this.database = database;
  20. this.user = user;
  21. this.pass = pass;
  22. }
  23.  
  24. public void connection() {
  25. if (!isConnected()) {
  26. try {
  27. connection = DriverManager.getConnection(urlbase + host + "/" + database, user, pass);
  28. System.out.println("connected ok");
  29. } catch (SQLException e) {
  30. e.printStackTrace();
  31. }
  32. }
  33. }
  34.  
  35. public void disconnect() {
  36. if (isConnected()) {
  37. try {
  38. connection.close();
  39. System.out.println("connected off");
  40. } catch (SQLException e) {
  41. e.printStackTrace();
  42. }
  43. }
  44. }
  45.  
  46. public boolean isConnected() {
  47. return connection != null;
  48. }
  49.  
  50. public void createAccount(Player player) {
  51. try {
  52. PreparedStatement q = connection.prepareStatement("SELECT money FROM PlayerMoney WHERE uuid = ?");
  53. q.setString(1, player.getUniqueId().toString());
  54.  
  55. ResultSet rs = q.executeQuery();
  56.  
  57. if (!rs.next()) {
  58. q.close();
  59. PreparedStatement q1 = connection.prepareStatement("INSERT INTO PlayerMoney (uuid,money) VALUES (?,?)");
  60. q1.setString(1, player.getUniqueId().toString());
  61. q1.setInt(2, 0);
  62. q1.execute();
  63. q1.close();
  64. }
  65. } catch (SQLException e) {
  66. e.printStackTrace();
  67. }
  68. }
  69.  
  70. public int getBalance(Player player) {
  71. // SELECT
  72.  
  73. try {
  74. PreparedStatement q = connection.prepareStatement("SELECT money FROM PlayerMoney WHERE uuid = ?");
  75. q.setString(1, player.getUniqueId().toString());
  76.  
  77. int balance = 0;
  78. ResultSet rs = q.executeQuery();
  79.  
  80. while (rs.next()) {
  81. balance = rs.getInt("money");
  82. }
  83.  
  84. q.close();
  85.  
  86. return balance;
  87.  
  88. } catch (SQLException e) {
  89. e.printStackTrace();
  90. }
  91.  
  92. return 0;
  93. }
  94.  
  95. public void addMoney(Player player, int amount) {
  96. // UPDATE
  97.  
  98. int balance = getBalance(player);
  99. int newbalance = balance + amount;
  100.  
  101. try {
  102. PreparedStatement rs = connection.prepareStatement("UPDATE money SET money = ? WHERE uuid = ?");
  103. rs.setInt(1, newbalance);
  104. rs.setString(2, player.getUniqueId().toString());
  105. rs.executeUpdate();
  106. rs.close();
  107.  
  108. } catch (SQLException e) {
  109. e.printStackTrace();
  110. }
  111.  
  112. }
  113.  
  114. public void removeMoney(Player player, int amount) {
  115. // UPDATE
  116.  
  117. int balance = getBalance(player);
  118. int newbalance = balance - amount;
  119.  
  120. if (newbalance <= 0) {
  121. return;
  122. }
  123.  
  124. try {
  125. PreparedStatement rs = connection.prepareStatement("UPDATE money SET money = ? WHERE uuid = ?");
  126. rs.setInt(1, newbalance);
  127. rs.setString(2, player.getUniqueId().toString());
  128. rs.executeUpdate();
  129. rs.close();
  130.  
  131. } catch (SQLException e) {
  132. e.printStackTrace();
  133. }
  134.  
  135. }
  136.  
  137. }
Add Comment
Please, Sign In to add comment