将对象保存到JAVA中的数据结构或文件中

时间:2018-08-14 15:53:52

标签: java oop security arraylist

语言

Java

应用程序:

患者查看器/创建者

问题

  1. 我应该如何处理正在创建的对象?
  2. 在创建患者对象时将其保存到结构的负面影响是什么?有什么好处吗?

当前实施:

我最初的想法是创建一个ArrayList或Map并将Patient对象在创建时保存到数据结构中。经过一点研究,我发现做这样的事情可能不是最安全的事情,例如内存泄漏。(其他负面因素是什么?)

public class PatientApp {
  public static void main(String[] args) {
    ArrayList<Patient> patientList = new ArrayList<>();
    Patient patient = new Patient();
    patientList.add(patient);
  }
}

然后,我想到可以将患者对象保存到文件中,并在需要检索患者信息时加载该文件。这样会更好吗?

2 个答案:

答案 0 :(得分:1)

您应该通过Serializable类实现Java Patient接口,还应注意Patient类不包含任何不可序列化的属性(请尝试限制在属性)。然后,您将能够轻松地将类Patient的对象保存到文件中(也可以通过网络传输!)。

实际上,您应该将患者信息保存在存储设备(例如数据库)中。此外请记住,除非您在主存储器(即RAM)中重新创建或还原其保存状态,否则您将无法处理保存在辅助存储器中的对象。因此,如果要同时对多个患者进行某些操作(!),则应将其保留在类似数据结构的列表中(而不是在文件中)。

要了解更多信息,请搜索Java Object Serialization

答案 1 :(得分:0)

这取决于您的要求。患者对象的范围是什么? Arraylist和其他数据结构不是永久存储,因此我们无法比较这些数据结构和文件或数据库等永久存储。