我正在以对象的形式在一个法人系统(通过机器人)中收集大量数据,我不确定处理这些数据的OOP推荐是什么。
每个对象将包含非常少量的数据,但它们将成千上万。我应该在创建对象后立即在数据库中记录该对象,还是应该将其保留在内存中,直到该过程结束,然后我更新数据库?
第一种情况对我来说似乎更安全,但由于记录不断,因此速度也较慢。在第二种情况下,我将获得性能,但数据将仅保留在内存中,直到程序(将花费大量时间)结束。
我经常问自己OOP建议从对象存储数据。对象是否应该实现自己从数据库中记录/检索数据方法?或者我应该创建一个类来操纵DB中的对象记录?如果您有这方面的经验,我想知道您在练习什么。谢谢!
答案 0 :(得分:2)
使用存储库模式,即创建一个类来封装对某些存储的访问。
在您的情况下,我建议存储库行为的实现如下:
保存对象时,将其存储在内存中并定期执行批量数据库插入。
答案 1 :(得分:1)
成千上万的物品并不多。在你需要之前不要担心。
当/如果你需要担心它,你可以使用一个单独的线程写入数据库。