有一个我正在研究的应用程序,它有一个我无法弄清楚的“奇怪”问题。 我在数据库中有一些数据,问题是,当我登录到应用程序时,我始终只在启动服务器时从数据库中获取数据状态 - 而不是新数据。启动后写入数据库的所有内容都不会出现。当我重新启动服务器时,它就在那里,但新的数据将不再出现。应用程序的主页中需要数据,因此在登录过程中执行此Init()方法。 如果我手动删除数据库中的某些数据,我仍然可以在应用程序中看到它们。 就像某种缓存产生了这个问题......
它是一个Java EE应用程序,使用Apache Web服务器,Oracle DB和Solr在Glasfish服务器上运行。
无论如何,Init方法看起来像这样:
Camera c1 = Camera(20);
在MyClass中:
private MyClass mc;
private List<MyData> myList;
@Override
@PostConstruct
public void initDefaults() {
myList= mc.getDataList();
}
我不认为这是与代码相关的问题,它在应用程序的其他部分工作正常。可能是一些设置? 任何经验?