![]() |
1
1
你刀上的纹身?这听起来真的不对。DAO类本身不应该包含任何数据。您也不应该在会话中存储数据,而应该让客户机在每个新的HTTP请求上加载它。您遇到的任何性能hog都将通过使用连接池和二级缓存(如果需要)来解决。
至于触发一个或另一个更新,有几种方法可以实现这一点。在服务器端重新填充“arraylist”至少没有意义。请求必须来自客户端。Ajax轮询确实是最好的方法之一。另一种方法是使用
至于框架,我建议使用jQuery和/或JSF。 |
![]() |
2
1
因此,首先与BalusC达成一致,您真的不应该在DAO中存储任何数据!这是一个DAO,这个类的主要目的是查询数据库以检索数据,理解这个概念将有助于您了解如何实现更新。 就更新而言,您需要考虑您的应用程序将如何工作,是否会有频繁的数据库更新,用户希望看到像记分牌,因此必须是半实时的,为此,如果在java中运行更新线程,或者如果使用jsp servlets,上面的方法是一个很好的折衷方案。如果你的应用程序是用户驱动的,那么我建议在用户第一次请求时检索数据,然后不要再检索,除非用户查看了该页面,这不需要任何额外的编码,因为我认为你的设置就足够了。 请不要经常通过线程重新填充数组列表,这样会对应用程序的性能甚至可维护性产生影响。 在考虑数据库访问时,我将此作为一个一般的经验法则live与用户驱动的应用程序需要不同的模型。 |