2010-05-29 31 views
3

J'ai implémenté une application Java Swing qui utilise une base de données JavaDB intégrée. La base de données doit être stockée quelque part et les tables de base de données doivent être créées lors de la première exécution. Quelle est la manière préférée de faire ces procédures? Dois-je toujours créer la base de données dans le répertoire local, et d'abord vérifier si le fichier de base de données existe, et s'il n'existe pas, laisser l'utilisateur créer les tables (ou au moins afficher un message indiquant que les tables seront créées). Ou devrais-je laisser l'utilisateur choisir un chemin? mais alors je dois sauver le chemin quelque part. Devrais-je enregistrer le chemin avec Preferences.systemRoot();, et vérifier si cette variable est définie au démarrage?Comment déployer une application Java Swing avec une base de données JavaDB intégrée?

Si l'utilisateur choisit un chemin et l'enregistre dans le Preferences, puis-je avoir des problèmes avec les autorisations d'utilisateur? ou devrait-il être sûr où l'utilisateur stocke la base de données? Ou comment puis-je gérer cela?

D'autres suggestions pour cette procédure?

Répondre

1

Je laisserais l'utilisateur choisir. De cette façon, ils peuvent exécuter plusieurs instances (simultanément ou autrement). Fournir un défaut raisonnable serait un bon coup.

magasin le chemin en utilisant l'API Préférences (je stockerait par utilisateur mais qui peuvent varier en fonction de l'application), et utiliser l'objet File pour déterminer si les répertoires existent et/ou sont Permissioned correctement.