This is an asynchronous database API which allows using MongoDB and MySQL asynchronously on Spigot.
In the config you can set which database should be in use.
Possible database types are " MONGODB" or " MYSQL"
MongoDB:
Get DatabaseHandler instance
MongoDatabaseHandler databaseHandler = databaseService.getMongoDatabaseHandler();
Get single `Document`
Document mongoDocument = databaseHandler.getAsyncModel("CollectionName", Filters.eq("UUID", player.getUniqueId().toString()));
Get `List` of `Document`
List<Document> mongoDocumentList = databaseHandler.getAsyncModels("CollectionName");
Insert `Document`
Document mongoDocument = new Document();
mongoDocument.put("UUID", player.getUniqueId().toString());
databaseHandler.insertModel("CollectionName", mongoDocument);
Update `Document`
Document mongoDocument = new Document();
mongoDocument.put("UUID", player.getUniqueId().toString());
mongoDocument.put("Kills", 10);
databaseHandler.updateModel("CollectionName", Filters.eq("UUID", player.getUniqueId().toString()), mongoDocument);
databaseHandler.deleteModel("CollectionName", Filters.eq("UUID", player.getUniqueId().toString()));
MySQL:
Get DatabaseHandler instance
MySQLDatabaseHandler databaseHandler = databaseService.getMySQLDatabaseHandler();
Get single `ResultSet`
String queryStatement = "SELECT * FROM `player_stats`";
ResultSet resultSet = databaseHandler.getAsyncModel(queryStatement);
Get `List` of `ResultSet`
String queryStatement = "SELECT * FROM `player_stats`";
List<ResultSet> resultSetList = databaseHandler.getAsyncModels(queryStatement);
Execute Insert-Statement
String insertStatement = "INSERT INTO `player_stats` (`UUID`, `KILLS`, `DEATHS`) VALUES ('" + player.getUniqueId.toString() + "', '0', '0')";
databaseHandler.insertModel(insertStatement);
Execute Update-Statement
String updateStatement = "UPDATE `player_stats` SET `KILLS`='" + kills + "' WHERE `UUID`='" + player.getUniqueId.toString() + "'";
databaseHandler.updateModel(updateStatement);
Execute Delete-Statement
String deleteStatement = "DELETE FROM `player_stats` WHERE `UUID`='" + player.getUniqueId.toString() + "'";
databaseHandler.deleteModel(updateStatement);

If you need any help you can contact us at https://discord.com/invite/9H4wxG9yBc
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta