Зависает приложение при Insert в БД
Выполняю учебный проект, в котором нужно создать удаленное файловое хранилище, файлы нужно хранить в БД, я использую MySQL. На данном этапе столкнулся с такой проблемой что при загрузке совсем небольших файлов проблемы нет, но при загрузке чего-то побольше, например мр3, приложение зависает примерно в одном и том же месте (-+8192байт).
public void sendToServer() throws IOException, SQLException, ClassNotFoundException {
System.out.println("я тут");
String extention = "";
int i = String.valueOf(path1).lastIndexOf('.');
if (i > 0) {
extention = String.valueOf(path1).substring(i + 1);
}
System.out.println(extention);
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(String.valueOf(path1)));
System.out.println("размер файла " + bis.available());
BufferedOutputStream bos = new BufferedOutputStream(Client.socket.getOutputStream());//при повторной отправке сокет закрыт
byte[] byteArray = new byte[8192];
int in;
while ((in = bis.read(byteArray)) != -1) {
bos.write(byteArray, 0, in);
String insert = "INSERT INTO " + Configs.dbName + "." + Const.USER_TABLE_FILES +
"(" + files_name + "," + files_data + ")" +
"VALUES(?,?)";
PreparedStatement preparedStatement = DatabaseHandler.getDbConnection().prepareStatement(insert);
preparedStatement.setString(1, String.valueOf(path1.getFileName()));
preparedStatement.setBytes(2, byteArray);
preparedStatement.executeUpdate();
System.out.println(bis.available());
}