If your java desktop application needs to store data in a database then a good solution is to embed a database into your solution. This approach avoids the need for the user to install a database separately from the application. This video demonstrates an application which installs the database as part of the application, builds the database tables and populates it with initial data.