Problem z długim wczytywaniem bazy danych.

Problem z długim wczytywaniem bazy danych.
M1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0

Witam.

Wykonaliśmy z kumplami na studiach projekt z GUI w swingu i bazą mysql na serwerze... Wszystko działa fajnie, jedna rzecz jest nie do przyjęcia... Po zalogowaniu do aplikacji musimy czekać jakieś 20 sekund żeby wszystko się z serwera załadowało i zaczęło normalnie działać. Moje pytanie brzmi jakiej klasy/interfejsu/obiektu/czegokolwiek użyć żeby podczas ładowania programu był widoczny jakiś element ? Chodzi mi tutaj o jakiś pasek ładowania, inicjalizacji. Nie chciałbym tego robić na wielu wątkach bo trochę z tym roboty a jutro deadline . Dzięki za odpowiedź z góry pozdrawiam!

Kerai
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: London
0
michal171913 napisał(a):

jakiej klasy/interfejsu/obiektu/czegokolwiek użyć żeby podczas ładowania programu był widoczny jakiś element ?

JProgressBar

michal171913 napisał(a):

Nie chciałbym tego robić na wielu wątkach bo trochę z tym roboty a jutro deadline.

Łączysz się do bazy i wczytujesz w wątku AWT?

michal171913 napisał(a):

Po zalogowaniu do aplikacji musimy czekać jakieś 20 sekund żeby wszystko się z serwera załadowało i zaczęło normalnie działać

Czy Ty a prawdę ściągasz całą zawartość bazy danych do programu tuż po zalogowaniu?

C4
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 37
1

Umieść proces pobierania danych z bazy w SwingWorkerze (banalnie proste) i daj jProgressBar z funkcją setIndeterminate(true). Robiąc czasochłonne operacje w swingu, swingworker to podstawa.

M1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0
michal171913 napisał(a):

Po zalogowaniu do aplikacji musimy czekać jakieś 20 sekund żeby wszystko się z serwera załadowało i zaczęło normalnie działać

Czy Ty a prawdę ściągasz całą zawartość bazy danych do programu tuż po zalogowaniu?</quote>

Tak ale baza nie jest duża całość to 400kb, myślę, że większy problem to zdjęcia które mamy na serwerze i wczytujemy do aplikacji, chciałem uniknąć sytuacji w ktorej aplikacja się włączy a zdjęcia będą niewidoczne, dlatego wyświetlam ramkę na samym końcu...

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.