每次启动应用程序时,Swing表单上的自动增量ID都会重置

时间:2016-02-09 09:49:43

标签: java swing auto-increment

我正在使用以下代码为我的事件报告应用生成ID的一个小挑战,该应用正在使用Swing进行开发...

private static final AtomicInteger counter = new AtomicInteger(0);
private  int staffId;
staffId = counter.incrementAndGet();
txtReferenceNumber.setText("SHE-0000"+ staffId);

这很好用。问题是,每次退出应用程序后打开应用程序,计数器都会重置为零。

如何保存计数器的状态,以便每次应用程序打开时都会读取上次保存的状态并在此后继续?也就是说,如果上次保存的incidentNumber SHE0010SHE0001,则应用该应用时,应该从那里继续而不是恢复为public static boolean isFirstDayOfTheMonth(Date dateToday){ Calendar c = new GregorianCalendar(); c.setTime(dateToday ); if (c.get(Calendar.DAY_OF_MONTH) == 1) { return true; } returns false; }

1 个答案:

答案 0 :(得分:0)

每次关闭应用程序时,它都会从RAM中传出。您必须通过保持后台进程保持打开来保存应用程序的状态,并且重新启动时状态将丢失。但是,您可以将数据保存在硬盘上,并在每次打开应用程序时从中获取值。可能最好的解决方案是将其保存在文件中。例如文本文件。