· 8 years ago · Aug 02, 2018, 02:16 PM
1package net.warpixel.bungeesystem.mysql;
2
3import net.md_5.bungee.BungeeCord;
4import net.warpixel.bungeesystem.main.Main;
5
6import java.sql.Connection;
7import java.sql.DriverManager;
8import java.sql.ResultSet;
9import java.sql.SQLException;
10import java.util.ArrayList;
11
12public class MySQL {
13 public static String username;
14 public static String password;
15 public static String database;
16 public static String host;
17 public static String port;
18 public static Connection con;
19
20 public static void connect() {
21 if (!isconnected()) {
22 try {
23 con = DriverManager.getConnection(
24 "jdbc:mysql://" + host + ":" + port + "/" + database + "?autoReconnect=true", username,
25 password);
26 con.setAutoCommit(true);
27 BungeeCord.getInstance().getConsole().sendMessage("§8[§aMysql-§4Ban§8] §aVerbunden");
28 } catch (SQLException e) {
29 e.printStackTrace();
30 }
31 }
32 }
33
34 public static void close() {
35 if (isconnected()) {
36 try {
37 con.close();
38 BungeeCord.getInstance().getConsole().sendMessage("§8[§aMysql-§4Ban§8] §cGeschlossen");
39 } catch (SQLException e) {
40 e.printStackTrace();
41 }
42 }
43 }
44
45 public static boolean isconnected() {
46 return con != null;
47 }
48
49 public static void createTable() {
50 if (isconnected()) {
51 try {
52 con.createStatement().executeUpdate(
53 "CREATE TABLE IF NOT EXISTS Wartung (Spielername VARCHAR(100), Type VARCHAR(10))");
54 con.createStatement().executeUpdate(
55 "CREATE TABLE IF NOT EXISTS OnlineTime (Name VARCHAR(100), UUID VARCHAR(100), Time BIGINT)");
56 } catch (SQLException e) {
57 e.printStackTrace();
58 }
59 }
60 }
61
62 public static void update(String qry) {
63 if (MySQL.isconnected()) {
64 try {
65 con.createStatement().executeUpdate(qry);
66 } catch (SQLException e) {
67 e.printStackTrace();
68 }
69 }
70 }
71
72 public static ResultSet getResult(String qry) {
73 if (MySQL.isconnected()) {
74 try {
75 return con.createStatement().executeQuery(qry);
76 } catch (SQLException e) {
77 e.printStackTrace();
78 }
79 }
80 return null;
81 }
82
83 public static void addWartung(String s) {
84 BungeeCord.getInstance().getScheduler().runAsync(Main.instance, new Runnable() {
85
86 @Override
87 public void run() {
88 update("INSERT INTO Wartung (Spielername, Type) VALUES ('" + s + "', 'wartung')");
89 }
90 });
91 }
92
93 public static void addBeta(String s) {
94 BungeeCord.getInstance().getScheduler().runAsync(Main.instance, new Runnable() {
95
96 @Override
97 public void run() {
98 update("INSERT INTO Wartung (Spielername, Type) VALUES ('" + s + "', 'beta')");
99 }
100 });
101 }
102
103 public static void removeBeta(String s) {
104 BungeeCord.getInstance().getScheduler().runAsync(Main.instance, new Runnable() {
105
106 @Override
107 public void run() {
108 update("DELETE FROM Wartung WHERE Spielername='" + s + "' AND Type='beta'");
109 }
110 });
111 }
112
113 public static void removeWartung(String s) {
114 BungeeCord.getInstance().getScheduler().runAsync(Main.instance, new Runnable() {
115
116 @Override
117 public void run() {
118 update("DELETE FROM Wartung WHERE Spielername='" + s + "' AND Type='wartung'");
119 }
120
121 });
122 }
123
124 public static boolean containsBeta(String s) {
125 try {
126 ResultSet rs = getResult("SELECT * FROM Wartung WHERE Spielername='" + s + "' AND Type='beta'");
127
128 return rs.next();
129
130 } catch (SQLException e) {
131 e.printStackTrace();
132 }
133 return false;
134
135 }
136
137 public static boolean containsWartung(String s) {
138 try {
139 ResultSet rs = getResult("SELECT * FROM Wartung WHERE Spielername='" + s + "' AND Type='wartung'");
140
141 return rs.next();
142
143 } catch (SQLException e) {
144 e.printStackTrace();
145 }
146 return false;
147
148 }
149
150 public static ArrayList<String> getBetaList() {
151
152 try {
153
154 ResultSet rs = getResult("SELECT * FROM Wartung WHERE Type='beta'");
155
156 ArrayList<String> list = new ArrayList<>();
157
158 while (rs.next()) {
159 list.add(rs.getString("Spielername").toLowerCase());
160 }
161
162 return list;
163
164 } catch (SQLException e) {
165 e.printStackTrace();
166 }
167 return null;
168
169 }
170
171 public static ArrayList<String> getWartungList() {
172 try {
173
174 ResultSet rs = getResult("SELECT * FROM Wartung WHERE Type='wartung'");
175
176 ArrayList<String> list = new ArrayList<>();
177
178 while (rs.next()) {
179 list.add(rs.getString("Spielername").toLowerCase());
180 }
181
182 return list;
183
184 } catch (SQLException e) {
185 e.printStackTrace();
186 }
187 return null;
188 }
189
190}