Skip to content

Commit 28b96c1

Browse files
committed
Update to using Hikari to handle database connections
1 parent c065eff commit 28b96c1

2 files changed

Lines changed: 36 additions & 13 deletions

File tree

pom.xml

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>simplexity</groupId>
88
<artifactId>SimpleVanish</artifactId>
9-
<version>1.1.0</version>
9+
<version>1.1.1</version>
1010
<packaging>jar</packaging>
1111

1212
<name>SimpleVanish</name>
@@ -38,6 +38,17 @@
3838
<goals>
3939
<goal>shade</goal>
4040
</goals>
41+
<configuration>
42+
<createDependencyReducedPom>false</createDependencyReducedPom>
43+
<transformers>
44+
<transformer
45+
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
46+
<manifestEntries>
47+
<paperweight-mappings-namespace>mojang</paperweight-mappings-namespace>
48+
</manifestEntries>
49+
</transformer>
50+
</transformers>
51+
</configuration>
4152
</execution>
4253
</executions>
4354
</plugin>
@@ -79,9 +90,9 @@
7990
<scope>provided</scope>
8091
</dependency>
8192
<dependency>
82-
<groupId>org.xerial</groupId>
83-
<artifactId>sqlite-jdbc</artifactId>
84-
<version>3.45.1.0</version>
93+
<groupId>com.zaxxer</groupId>
94+
<artifactId>HikariCP</artifactId>
95+
<version>6.3.0</version>
8596
</dependency>
8697
</dependencies>
8798
</project>

src/main/java/simplexity/simplevanish/saving/SqlHandler.java

Lines changed: 21 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
package simplexity.simplevanish.saving;
22

3+
import com.zaxxer.hikari.HikariConfig;
4+
import com.zaxxer.hikari.HikariDataSource;
35
import simplexity.simplevanish.SimpleVanish;
46
import simplexity.simplevanish.config.ConfigHandler;
57
import simplexity.simplevanish.objects.PlayerVanishSettings;
68

79
import java.sql.Connection;
8-
import java.sql.DriverManager;
910
import java.sql.PreparedStatement;
1011
import java.sql.ResultSet;
1112
import java.sql.SQLException;
@@ -16,6 +17,9 @@
1617
@SuppressWarnings({"FieldCanBeLocal", "CallToPrintStackTrace"})
1718

1819
public class SqlHandler {
20+
private static final HikariConfig hikariConfig = new HikariConfig();
21+
private static HikariDataSource dataSource;
22+
1923
Connection connection;
2024
Logger logger = SimpleVanish.getInstance().getLogger();
2125
private final String initStatement = """
@@ -65,6 +69,7 @@ public static SqlHandler getInstance() {
6569

6670

6771
public void init() {
72+
setupConfig();
6873
try {
6974
connection = getConnection();
7075
try (Statement statement = connection.createStatement()) {
@@ -135,16 +140,23 @@ public void updateSettings(UUID uuid) {
135140
}
136141
}
137142

138-
private Connection getConnection() throws SQLException {
143+
private static Connection getConnection() throws SQLException {
144+
return dataSource.getConnection();
145+
}
146+
147+
148+
private void setupConfig() {
139149
if (ConfigHandler.getInstance().isMysqlEnabled()) {
140-
return DriverManager.getConnection("jdbc:mysql://" + ConfigHandler.getInstance().getMysqlIP() + "/"
141-
+ ConfigHandler.getInstance().getDatabaseName(),
142-
ConfigHandler.getInstance().getDatabaseUsername(),
143-
ConfigHandler.getInstance().getDatabasePassword());
150+
hikariConfig.setJdbcUrl("jdbc:mysql://" + ConfigHandler.getInstance().getMysqlIP() + "/"
151+
+ ConfigHandler.getInstance().getDatabaseName());
152+
hikariConfig.setUsername(ConfigHandler.getInstance().getDatabaseUsername());
153+
hikariConfig.setPassword(ConfigHandler.getInstance().getDatabasePassword());
154+
dataSource = new HikariDataSource(hikariConfig);
155+
return;
144156
}
145-
return DriverManager.getConnection("jdbc:sqlite:"
146-
+ SimpleVanish.getInstance().getDataFolder()
147-
+ "/vanish-settings.db");
157+
hikariConfig.setJdbcUrl("jdbc:sqlite:" + SimpleVanish.getInstance().getDataFolder() + "/vanish-settings.db");
158+
hikariConfig.setConnectionTestQuery("PRAGMA journal_mode = WAL;");
159+
dataSource = new HikariDataSource(hikariConfig);
148160
}
149161

150162
}

0 commit comments

Comments
 (0)