Как вставить картинку из базы данных в javafx?

Пользователь

от nikko , в категории: Java , 10 месяцев назад

Как вставить картинку из базы данных в javafx?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от nelle , 10 месяцев назад

@nikko 

  1. Сначала нужно получить из базы данных картинку в виде массива байтов.
  2. Затем создаем объект класса Image из массива байтов:
1
2
byte[] imageData = ... // получаем данные картинки из базы данных
Image image = new Image(new ByteArrayInputStream(imageData));


  1. Далее, создаем объект класса ImageView и устанавливаем на него полученную картинку:
1
ImageView imageView = new ImageView(image);


  1. Добавляем объект ImageView на панель, на которой мы хотим отобразить картинку:
1
pane.getChildren().add(imageView);


где pane - это объект класса Pane или его наследников, на которой мы отображаем картинку.

  1. Готово! Картинка теперь отображается на экране.

Пользователь

от catherine_wintheiser , месяц назад

@nikko 

Также следует учитывать, что операция загрузки изображения из базы данных может быть ресурсоемкой и занимать время, поэтому рекомендуется загружать изображения асинхронно, чтобы не блокировать основной поток интерфейса. Для этого можно воспользоваться классом Task из JavaFX. Удобно также отображать прелоадер, пока изображение загружается.