Zunächst einmal stimme ich BalusC zu, dass Sie wirklich keine Daten im DAO speichern sollten! Dies ist ein DAO und der Hauptzweck dieser Klasse besteht darin, die Datenbank abzufragen, um diese Daten abzurufen. Wenn Sie dieses Konzept verstehen, wird Ihnen dies sehr dabei helfen, herauszufinden, wie Sie Updates implementieren können. Was die Updates betrifft, müssen Sie berücksichtigen, wie Ihre Anwendung funktionieren soll. Gibt es häufige Aktualisierungen der Datenbank, die der Benutzer sehen soll, wie beispielsweise einen Punktestand? Hierfür müsste möglicherweise ein Aktualisierungsthread laufen, wenn Sie Java verwenden, oder wenn Sie JSP-Servlets verwenden, wäre die oben genannte Methode ein guter Kompromiss. Wenn Ihre Anwendung benutzergetrieben ist, würde ich vorschlagen, die Daten beim ersten Request des Benutzers abzurufen und dann nicht erneut, es sei denn, der Benutzer sieht sich diese Seite an. Dies sollte keine zusätzliche Codierung erfordern, da ich vermute, dass Ihr Setup dafür ausreichen wird.
Bitte füllen Sie die Array-Liste nicht ständig über einen Thread neu, denken Sie an die Auswirkungen auf die Leistung und sogar die Wartbarkeit Ihrer Anwendung.
Beim Nachdenken über den Datenbankzugriff verwende ich dies als Faustregel: Live-Apps im Vergleich zu benutzergetriebenen Apps erfordern unterschiedliche Modelle.