sql >> Database teknologi >  >> RDS >> Mysql

Bind en forespørgsels fremskridt til en progressProperty af en ProgressBar for at informere brugeren om download- og uploadtid i javaFX?

Normalt er dette så simpelt som indlæser billedet fra en url i baggrunden og spore dets fremskridt ved at binde progress-egenskaben for statuslinjen til progress-egenskaben til billedet . Det ville replikere funktionaliteten af ​​den Android-kode, du sendte med meget mindre kode.

ProgressBar bar = new ProgressBar();
Image image = new Image(url, true);
bar.progressProperty().bind(image.progressProperty());

Det eneste vanskelige her er, at den ikke-Android-kode, du har sendt, ikke er den samme som Android-koden i funktionalitet. I stedet for at hente et billede fra en URL, henter ikke-Android-koden billedet fra en database.

Hvis du vil overvåge fremskridt med hentning af billeder, der er gemt i en database, skal du gøre et par ekstra ting:

  1. I et ekstra felt i databasen gemmes størrelsen af ​​billedet.
  2. Gem selve billedet i en klat i databasen.
  3. Hent den samlede størrelse af billedet fra databasen, når det kræves.
  4. Hent Blob'en fra databasen som en strøm .
  5. Registrer en tilpasset webadresse protokol som er i stand til at hente databasestrømmen og konvertere strømmen til en URL. (Alternativt kan du være vært for en webapplikationsservlet, som foretager konverteringen og returnerer dataene over http ).
  6. Nu kan du indlæse billedet i baggrunden ved hjælp af din brugerdefinerede URL-protokol og overvåge dets fremskridt via dets statusegenskab som før.

At udføre trin 5 er vanskeligt, og jeg vil ikke skrive koden for at gøre det her, da det ville tage mig lang tid at oprette en sådan kode.




  1. Hvem har nogen dokumenter om PostgreSQL-baggrundsprocesser?

  2. Oracle samme tabelnavn på andet skema?

  3. java.sql.SQLException:Ugyldig argumentværdi:java.io.NotSerializableException

  4. Hvordan validerer man kreditkortnummer og identificerer dets type ved hjælp af PL/SQL?