Как Добавить видео в java и Хранение в MYSQL

191
09 сентября 2018, 18:50

Есть программа которая позволяет юзера добавить фото и видео в сайт есть такой код который позволяет добавить фотография в сайт

код для добавление фотографии

@RequestMapping(value = "/product/image", method = RequestMethod.GET)
    public void getImageAsByteArray(HttpServletResponse response, @RequestParam("fileName") String fileName) throws IOException {
        InputStream in = new FileInputStream("D:\\bankSystem\\" + fileName);
        response.setContentType(MediaType.IMAGE_JPEG_VALUE);
        IOUtils.copy(in, response.getOutputStream());
    }

хотел ради интереса добавить видео место фотографии дал такая ошибка

org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (157246306) exceeds the configured maximum (10485760)

вот скажет что большая расширения но если резать видео для такого расширению видео длится до 1-2 секунд и это очень мало есть возможность чтобы добавить нормальную видеоролика ? если есть возможность и пользователь добавил видео как отображать этот видео на его стене ? для отображении фотографии есть такой код

<c:forEach items="${product}" var="product">
 <img style="width:15px;height: 15px" src="/product/image?fileName=${product.picture}"> 
</c:forEach>

Весь код было обработана на Spring

Для хранения данных использую MYSQL база данных если все было хорошо пользователь добавил видео в каком типе можно хранить этот видео ?

Answer 1

Приветствую всем Особенно кто в комментариях дал какой то совет и помог мне ! я долго попробовал разные способы и нашел решения этой проблеме вот

Это был то код который позволил добавить фото.На самом деле у MediaType - е есть такой метод ALL_VALUE этот метод позволяет добавить и гифы и все что угодно

@RequestMapping(value = "/product/image", method = RequestMethod.GET)
public void getImageAsByteArray(HttpServletResponse response, @RequestParam("fileName") String fileName) throws IOException {
    InputStream in = new FileInputStream("D:\\bankSystem\\" + fileName);
    response.setContentType(MediaType.IMAGE_JPEG_VALUE);
    IOUtils.copy(in, response.getOutputStream());
}

Вот измененный код

    @RequestMapping(value = "/product/image", method = RequestMethod.GET)
public void getImageAsByteArray(HttpServletResponse response, @RequestParam("fileName") String fileName) throws IOException {
    InputStream in = new FileInputStream("D:\\bankSystem\\" + fileName);
    response.setContentType(MediaType.ALL_VALUE);
    IOUtils.copy(in, response.getOutputStream());

Чтобы отображать видео на странице пользователя нам поможет этот код

 <c:forEach items="${product}" var="product">
    ${product.name}
    <video style="width:300px;height: 300px" src="/product/image?fileName=${product.picture}">
</c:forEach>

В MYSQL varchar тоже нормально но лучше LONGTEXT

Еще раз спасибо всем

READ ALSO
SQL - правильность запрос с REGEXP

SQL - правильность запрос с REGEXP

в t1keys значения вида: d0790b5d_2018071323

167
Выбрать ближайшие даты из текущего года

Выбрать ближайшие даты из текущего года

Допустим есть таблица с разными датами (день рождения, день ВДВ, год без наркотиков, вернуть долг пете)Некоторые повторяются каждый год, некоторые...

190
Бэкап только новых данных MySQL

Бэкап только новых данных MySQL

Есть например таблица с 10 милионов записей

198
Структура таблиц mySQL

Структура таблиц mySQL

Прошу совета по структуре таблиц

190