Java,数据库为什么要分配一个新对象,而我们可以直接将它放入数据库
我有一个窗口,允许用户使用一些字段(date, start time, end time, ...)
预订约会,并将其保存到数据库中。为什么我需要将这些字段保存在对象中,例如
Appointment a = new Appointment(date,start,end,...);
然后使用get
方法取回这组数据,而不是将其直接保存到数据库中
有人告诉我,因为面向对象编程是如何工作的,但任务只是向数据库插入一组新数据,不需要修改
# 1 楼答案
是的,我们可以直接放,但不方便
我们以面向对象的方式工作,尽量不与原始输入数据交互。在收到一些数据后,我们通常会构造某个类的实例,然后只处理这个对象及其状态
这很方便,因为实例保留了它所呈现对象的所有必要信息。我们可以通过只使用一个参数(不考虑要保存的许多字段),毫无问题地将其传递到不同的方法中
在处理过程中,一个实例在准备持久化之前可能会经历几个里程碑(如筛选、验证)。因此,重要的是,这样的基础结构方法需要一个完整的、已经形成的对象,并且只需要修改它的状态
最后,通过所有这些,OOP使您的代码更具可读性和自解释性
# 2 楼答案
你不一定要这么做。例如,您可以使用基本的
EntityManager
,使用executeQuery
方法将值直接插入任何数据库。对象的创建主要是面向对象编程,我(和其他像我这样的OO上瘾者)更喜欢先保存对象。一个原因是,当您想要从数据库中检索信息时,更容易理解实际返回的数据。第二个问题是更好地概述整个代码。让它更具可读性等等EntityManager的示例: