在抽象数据库系统中存储抽象数据

时间:2016-09-04 10:11:13

标签: java database abstract

我试图在java中编写一个简单的库系统。目前,数据库的实现如下:我们有一个抽象类,为主代码提供接口。通过继承,我们定义了一个特定的数据库逻辑。这样做我们就可以轻松切换数据库系统(mySql,postgresql等)。

现在我的问题是,我们存储的数据全部都在一个班级' Book'中。这个类的实例传递给数据库,是否可以将它作为一个抽象类?因此,我们可以存储DVD或手机而不会发生太大变化。

我们无法将数据库代码放入' Article'因为我们不知道我们将使用什么数据库系统。我们可以做的是获取所有变量并将它们放在一个字符串中,并将此字符串返回到数据库系统并保存该字符串。但这并不是我想做的事情。

还有其他我没想到的解决方案吗?

1 个答案:

答案 0 :(得分:0)

听起来您正在尝试解决现代ORM库已经解决的问题,特别是在Java规范中添加了JPA。我建议您考虑使用它来实现数据库策略。

JPA旨在允许您持久保存对象和复杂的对象层次结构,而无需自己解决这些特定问题,因为它很快变得异常复杂,浪费时间,您可能会专注于应用程序的逻辑。

Hibernate将是一个很好的起点:

http://hibernate.org/orm/documentation/5.2/