繁体   English   中英

如何在Java中将Arraylist值存储到数据库中?

[英]How to store Arraylist values into database in java?

我想将Arraylist值存储到Java中的数据库(PostgreSQL数据库)中。

ArrayList<String> ActiveProcess = new ArrayList<String>();
        ArrayList<String> InActiveProcess = new ArrayList<String>();

我想将详细信息存储在数据库ProcessInfo表中,其中包含以下字段:进程名称,进程状态,已发送电子邮件,已发送SMS,LastModifiedTime。 ActiveProcess包含进程名称为server.exe, Receiver.exe .etc其进程状态为true,已发送电子邮件,已发送SMS为假。

InActiveProcess包含进程名称为SmsReceiver.exe, sender.exe .etc其进程状态为false,已发送电子邮件,已发送SMS为true。

这个怎么做..? 预先感谢。

构建模型类以促进将过程信息存储在DB中:

public class Process {
  public static enum TYPE { ACTIVE , NOT_ACTIVE } ; 

  private ArrayList<String> names ;
  private String emailSent emailSent ;
  private Date lastModification ;
  private Boolean status ;
  private TYPE type ;

  //
  // provide constructors + setter + getter methods
  //

}

要将进程存储在DB中,请使用:

public void saveProcess (Process p) {
  ArrayList<String> name = p.getProcessesName();  // or you can get iterator from the arraylist
  String emailSent = p.getEmailSent();
  Date lastModification = p.getLastModification();
  Boolean status = p.getStatus();

  //
  // use SQL insert statements to save info
  //

}

获得所有过程:

public ArrayList<Process> getAllProcesses () {
  ArrayList<Process> processes = new ArrayList<Process>();

  //
  // use SQL select statement to get processes
  //

   return proceses ;
}

或者您可以将TYPE传递给方法以获取活动或非活动进程。

最好的方法是保持简单,避免数据库设计不正常。 所以我建议一个新表,其中主表使用id引用两列(id,值)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM