我正在尝试开发一个小型基于插件的培训计算器,作为一个家庭项目(设计时考虑到了体重训练)使用Java。什么样的数据库适合存储我的对象?
应用程序核心提供某些插件可能与之连接的服务。其中之一就是所谓的“数据服务”,它让插件存储数据并检索它们。现在,我觉得我的对象构建的方式与关系数据库甚至对象关系数据库无法很好地匹配。但是我希望能够进行一些搜索和查询,如果我的对象被存储为二进制文件,这可能是不可行或容易做到的。
问题是我想存储单个条目(LogEntry对象),它是由一个或多个对象组件组成的对象,该对象又由一个或多个对象组件组成。
我的对象是这样的(伪):
// This is the plugin itself
class Log
{
member PersonalStats;
member LogBook; // ideally, this would be a table with the log entries
... // methods
}
/* ================= */
// part of Log class
class PersonalStats
{
member Date birthdate;
... // etc., all the personal stuff
... // methods
}
// part of Log class
class LogBook
{
member List<LogEntry> entries;
... // methods
}
/* ================= */
// an object of this class should represent one dataset in LogBook
class LogEntry
{
member List<ExerciseDetail> exercises;
member String comments;
member Date date;
... // methods
}
/* ================= */
class ExerciseDetail
{
member Exercise exercise;
member List<SetSchema> warmUps;
member SetSchema workSet;
... // methods
}
class Exercise
{
member String name;
... // methods
}
class SetSchema
{
member int sets;
member int reps;
member double weight;
... // methods
}
我的问题是:为了使核心应用程序能够提供数据库支持,什么样的数据库管理系统将适用于这种数据模式?我希望它是非语言特定的。
但我不确定,如果数据库是要走的路,但。所以,如果您有任何建议,请随时分享。
谢谢你的回答,它帮助了我。我在某些细节上有点过于拘谨,所以我没有注意到这一点。 –