Advertisement
Guest User

Untitled

a guest
Jul 9th, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.66 KB | None | 0 0
  1. package net.azuriarp.api.data;
  2.  
  3. import org.bukkit.entity.Player;
  4.  
  5. import java.sql.*;
  6.  
  7. /**
  8.  * Created by invite on 08/07/2017.
  9.  */
  10. public class DataManager {
  11.  
  12.     private Connection connection;
  13.     private String urlbase,host,database,user,pass;
  14.  
  15.     public DataManager(String urlbase, String host, String database, String user, String pass) {
  16.         this.urlbase = urlbase;
  17.         this.host = host;
  18.         this.database = database;
  19.         this.user = user;
  20.         this.pass = pass;
  21.     }
  22.  
  23.     public void connection() {
  24.  
  25.         if(!isConnected()) {
  26.  
  27.             try {
  28.                 connection = DriverManager.getConnection(urlbase + host + "/" + database, user, pass);
  29.                 System.out.println("[AzuriaAPI] SQL > connected");
  30.  
  31.             } catch (SQLException e) {
  32.                 System.out.println("[AzuriaAPI] SQL > Error : Can't connect to the database");
  33.                 e.printStackTrace();
  34.             }
  35.         }
  36.     }
  37.  
  38.     public void disconnection() {
  39.  
  40.         if(isConnected()) {
  41.  
  42.             try {
  43.                 connection.close();
  44.                 System.out.println("[AzuriaAPI] SQL > disconnected");
  45.  
  46.             } catch (SQLException e) {
  47.                 System.out.println("[AzuriaAPI] SQL > Error : Can't connect to the database");
  48.                 e.printStackTrace();
  49.             }
  50.         }
  51.     }
  52.  
  53.     public void createAccount(Player player) {
  54.  
  55.         if(!hasAccount(player)) {
  56.  
  57.             try {
  58.                 PreparedStatement query = connection.prepareStatement("INSERT INTO Players(uuid,ecus,grade) VALUES(?,?,?)");
  59.  
  60.                 query.setString(1, player.getUniqueId().toString());
  61.                 query.setInt(2,100);
  62.                 query.setString(3, "joueur");
  63.                 query.execute();
  64.                 query.close();
  65.  
  66.                 System.out.println("[AzuriaAPI] SQL > New Account !");
  67.  
  68.             } catch (SQLException e) {
  69.                 e.printStackTrace();
  70.             }
  71.         }
  72.     }
  73.  
  74.     public boolean isConnected() {
  75.         return connection != null;
  76.     }
  77.  
  78.     public boolean hasAccount(Player player) {
  79.  
  80.         try {
  81.             PreparedStatement query = connection.prepareStatement("SELECT uuid FROM Players WHERE uuid = ?");
  82.  
  83.             query.setString(1, player.getUniqueId().toString());
  84.             ResultSet result = query.executeQuery();
  85.             boolean hasAccount = result.next();
  86.             query.close();
  87.  
  88.             return hasAccount;
  89.  
  90.         } catch (SQLException e) {
  91.             e.printStackTrace();
  92.         }
  93.  
  94.         return false;
  95.     }
  96.  
  97.     public Connection getConnection() {
  98.         return connection;
  99.     }
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement