我正在使用以下代码为我的事件报告应用生成ID的一个小挑战,该应用正在使用Swing进行开发...
private static final AtomicInteger counter = new AtomicInteger(0);
private int staffId;
staffId = counter.incrementAndGet();
txtReferenceNumber.setText("SHE-0000"+ staffId);
这很好用。问题是,每次退出应用程序后打开应用程序,计数器都会重置为零。
如何保存计数器的状态,以便每次应用程序打开时都会读取上次保存的状态并在此后继续?也就是说,如果上次保存的incidentNumber
SHE0010
为SHE0001
,则应用该应用时,应该从那里继续而不是恢复为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;
}
答案 0 :(得分:0)
每次关闭应用程序时,它都会从RAM中传出。您必须通过保持后台进程保持打开来保存应用程序的状态,并且重新启动时状态将丢失。但是,您可以将数据保存在硬盘上,并在每次打开应用程序时从中获取值。可能最好的解决方案是将其保存在文件中。例如文本文件。