· 5 years ago · Apr 21, 2020, 06:40 PM
1package me.AltSystem;
2
3import java.sql.DriverManager;
4import java.sql.PreparedStatement;
5import java.sql.ResultSet;
6import java.sql.SQLException;
7
8
9import java.sql.Connection;
10
11
12public class MySQL {
13 public Connection connection;
14
15 public void load() {
16 try {
17 Class.forName("com.mysql.jdbc.Driver");
18 } catch (ClassNotFoundException e) {
19 e.printStackTrace();
20 System.err.println("Driver jdbc not found!");
21 return;
22 }
23 openConnection();
24 String query = "CREATE TABLE IF NOT EXISTS "+ Main.instance.table +" (Player VARCHAR(100), Status INT(10), Data TIMESTAMP DEFAULT CURRENT_TIMESTAMP);";
25 try {
26 getConnection().createStatement().execute(query);
27 } catch (SQLException e) {
28 e.printStackTrace();
29 }
30
31 }
32
33 public void Request(String Player) {
34 openConnection();
35 String query = "INSERT INTO "+ Main.instance.table +" (Player, Status) VALUES ('" + Player + "', '1');";
36 try {
37 getConnection().createStatement().execute(query);
38 } catch (SQLException e) {
39 e.printStackTrace();
40 }
41 }
42
43 public int Confirm(String Player) {
44 int status = 0;
45 openConnection();
46 String query = "SELECT * FROM "+ Main.instance.table +" WHERE Player = '" + Player + "';";
47 try {
48 PreparedStatement statement = getConnection().prepareStatement(query);
49 ResultSet result = statement.executeQuery();
50 while (result.next()) {
51 status = result.getInt("Status");
52 return status;
53 }
54 } catch (SQLException e) {
55 e.printStackTrace();
56 }
57 return status;
58 }
59
60 public void Conversion(String Player) {
61 openConnection();
62 String query = "UPDATE "+ Main.instance.table +" SET Status = REPLACE (Status, 1,2) WHERE Player = '" + Player + "';";
63 try {
64 getConnection().createStatement().execute(query);
65 } catch (SQLException e) {
66 e.printStackTrace();
67 }
68 }
69
70 public boolean Purge() {
71 openConnection();
72 String query = "TRUNCATE "+ Main.instance.table +";";
73 try {
74 getConnection().createStatement().execute(query);
75 return true;
76 } catch (SQLException e) {
77 e.printStackTrace();
78 }
79 return false;
80 }
81
82 public void openConnection() {
83 try {
84 synchronized (this) {
85 if (getConnection() != null && !getConnection().isClosed()) {
86 return;
87 }
88 Class.forName("com.mysql.jdbc.Driver");
89 setConnection(DriverManager.getConnection("jdbc:mysql://" + Main.instance.host+ ":" + Main.instance.port + "/" + Main.instance.database + "?useSSL="+Main.instance.SSL, Main.instance.user, Main.instance.password));
90
91 }
92 } catch (SQLException e) {
93 e.printStackTrace();
94 } catch (ClassNotFoundException e) {
95 e.printStackTrace();
96 }
97 }
98
99
100 public Connection getConnection() {
101 return connection;
102 }
103
104 public void setConnection(Connection connection) {
105 this.connection = connection;
106 }
107
108}