Hi Spongers, His Spongeness, El Spongarinos- if you’re not into that whole brevity thing…
I have a quick question on best practices as determined by the plugin dev community about storing of plugin data. Back in the days of Bukkit, I’d store data in flat files or in a SQL database (usualy SQLite). Returning to plugin development now that Sponge is in a stable place (and lookin’ good, I might add!), I’m curious what the sense of the best practices for storing data a plugin needs to function are. Do we still use external databases, XML or similar flat files, or does Sponge provide/direct some specific strategy.
Thanks! I’m working on designs for a new plugin and I’d like to have my ducks in a row as I begin architecting it.
Hope you’re having a great day and thanks for any info or advice. 
If the data is configuration based and server admins should be able to modify it then use configuration files.
https://docs.spongepowered.org/master/en/plugin/configuration/index.html
If the data is not configuration, then spongeapi provides hooks for SQL databases, with built in support for H2
https://docs.spongepowered.org/master/en/plugin/database.html
If the data is to be attached to items/entities or other in-game objects then you may want to look into “custom data manipulators”
Thanks! I’ve been peeking at custom data manipulators, and they look interesting in that they seem to provide a way to attach pretty much any data (within reason, of course) to an object, block or entity, without having to track it independently.
But it looks like the SQL database pooling system is the answer to the question I posed, and I thank you for the info!