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

Java 每次启动应用程序时,Swing窗体上的自动增量ID都会重置,java,swing,auto-increment,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); 这个很好用。问题是,每次应用程序打开时,计数器

我有一个小挑战,我正在使用下面的代码为我的事件报告应用程序生成ID,该应用程序正在使用Swing开发

private static final AtomicInteger counter = new AtomicInteger(0);
private  int staffId;
staffId = counter.incrementAndGet();
txtReferenceNumber.setText("SHE-0000"+ staffId);
这个很好用。问题是,每次应用程序打开时,计数器都会重置为零,而退出应用程序后,计数器会重置为零


如何保存计数器的状态,以便每次打开应用程序时都从上次保存的状态读取数据,并在此后继续?也就是说,如果上次保存的
incidentNumber
是应用程序启动时的
SHE0010
,则应从此处继续,而不是每次关闭应用程序时都返回到
SHE0001

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

将值保存在数据库或文件中。您当然应该为此使用自动增量数据库列。