Как преобразовать Part в Blob, чтобы я мог сохранить его в MySQL?
5656 просмотра
1 ответ
Как преобразовать Part в Blob, чтобы я мог сохранить его в MySQL? Это изображение. Спасибо
Моя форма
<h:form id="form" enctype="multipart/form-data">
<h:messages/>
<h:panelGrid columns="2">
<h:outputText value="File:"/>
<h:inputFile id="file" value="#{uploadPage.uploadedFile}"/>
</h:panelGrid>
<br/><br/>
<h:commandButton value="Upload File" action="#{uploadPage.uploadFile}"/>
</h:form>
Мой боб
@Named
@ViewScoped
public class UploadPage {
private Part uploadedFile;
public void uploadFile(){
}
}
Автор: Pavel
Источник
Размещён: 12.11.2019 09:09
Ответы (1)
8 плюса
Решение
Тип BLOB базы данных SQL в Java представлен как byte[]
. Это в JPA далее будет помечено как @Lob
. Итак, ваша модель в основном должна выглядеть так:
@Entity
public class SomeEntity {
@Lob
private byte[] image;
// ...
}
Что касается борьбы Part
, вам, таким образом, в основном нужно прочитать его InputStream
в byte[]
. Apache Commons IO IOUtils
полезен здесь:
InputStream input = uploadedFile.getInputStream();
byte[] image = IOUtils.toByteArray(input); // Apache commons IO.
someEntity.setImage(image);
// ...
Или, если вы предпочитаете стандартный Java API, который немного более подробный:
InputStream input = uploadedFile.getInputStream();
ByteArrayOutputStream output = new ByteArrayOutputStream();
byte[] buffer = new byte[10240];
for (int length = 0; (length = input.read(buffer)) > 0;) output.write(buffer, 0, length);
someEntity.setImage(output.toByteArray());
// ...
Автор: BalusC
Размещён: 02.10.2013 02:17
Вопросы из категории :
- jsf Получение значения идентификатора сеанса из запроса JSF
- jsf Условно требуется проверка JSF в форме a4j
- jsf Атрибут привязки вызывает дублирование идентификатора компонента, найденного в представлении
- jsf commandButton / commandLink / ajax действие / метод слушателя не вызван или входное значение не установлено / обновлено
- jsf Format date in <f:selectItem(s) itemLabel> using DateTimeConverter
- jsf Горизонтальное размещение компонентов в JSF
- file-upload Как увеличить максимальный размер загружаемого файла в ASP.NET?
- file-upload Как загрузить файл с django (python) и s3?
- file-upload Разрешения django / file uploads
- file-upload Как мне установить папку с загруженными файлами для SWFUpload?
- file-upload Получить полный путь к файлу с помощью FileUpload Control
- file-upload Почему при загрузке файла требуется форма enctype = multipart / form-data?
- blob Хранение изображений в БД - да или нет?
- blob Как получить текстовое содержимое из BLOB в Oracle SQL
- blob Файлы FILESTREAM остаются после удаленной строки
- blob How can I store and retrieve images from a MySQL database using PHP?
- blob PHP MySQL: сохранение PDF в базу данных
- blob Хранение изображений в Core Data или в виде файла?