Zapis pliku binarnego do bazy danych MySQL

0

Witam,

Pytanie natury ogólnej :
.
Możecie podpowiedzieć, w jaki sposób tzn. jakiej metody jakiej klasy użyć aby pobrać plik binarny np. jpeg z formularza xhtml , a następnie podstawić go do zmiennej lub bezpośrednio do pola klasy JPA i zapisać do bazy danych mp. wykonać merge() ?
.
W książce przeczytałem przykład , w którym plik w 'kawałkach ' 1024 B zapisywany jest na dysk serwera, ale jak to zrobić kiedy trzeba zapisać go do odpowiedniego pola rekordu w tablicy bazy danych

?

1

A czemu to ma być jakis problem? Robisz w bazie kolumne BLOB i wrzucasz tam surowe bajty.

0

..czyli FileOututStream 'kieruję'/podstawiam metodą write() pod pole klasy JPA , a potem wykonuję merge() /update()

?
Zapomniałem dodać , że chodzi o JSF 2.2, JPA, EJB + PrimeFaces

1

Są dwie opcje, zapisywanie plików w bazie (właśnie za pomocą bloba), albo zapisywanie ich na dysku i trzymanie ścieżki do tych plików w bazie.
Przy pierwszym rozwiązaniu, wczytując taki rekord z bazy, wczytujesz również cały plik do pamięci, przy wczytywaniu kilku rekordów, wczytujesz kilka plików - może to spowolnić działanie aplikacji dlatego polecam drugie rozwiązanie.

0

Może jest to trywialne dla Was pytanie, ale 'co/jaki obiekt' otrzymam w wyniku zapisu 'surowych bajtów' odczytanych z pola tablicy MySQL(uprzednio tam zapisanych) na dysk ?
Bo chyba nie ten sam plik , który zapisałbym uprzednio inną metodą na dysku a w polu bazy danych przechowywałbym ścieżkę dostępu (String)

?

1 użytkowników online, w tym zalogowanych: 0, gości: 1