Здесь с другим вопросом о Изображениях (который кажется более сложным, чем я предсказывал) Я работаю над Java-приложением с JSF 2.0 (apache myFaces), и я хочу, чтобы это приложение могло загружать картинку в пункт назначения на сервере, на котором он будет работать. У меня есть сервер Windows r2 2008, на котором работает mySQL Db, но я не хочу хранить изображение в db, я бы скорее сохранил его где-то на сервере, а затем просто сохранил путь в виде строки в db.
Мне сказали, что это лучший способ, но я не могу найти пример того, как сохранить его на сервере. Я запускаю приложение на сервере Apache Tomcat в качестве файла WAR. поэтому я не знаю, должен ли я сохранять файл в пути на диске сервера (например, C:\images) или в специальной папке самого проекта (в файлах java, html), любая помощь вообще очень ценится, Я полностью потерян и застрял весь день, пытаясь понять это.
Код, который я использую для загрузки изображения в класс java, это (любезно предоставлено CodyS):
InputStream is = uploadedFile.getInputStream();
byte[] buffer = new byte[(int) uploadedFile.getSize()];
is.read(buffer);
File f = new File("C:\\temp\\" + this.patient.getPk() + ".jpeg");
f.createNewFile();
FileOutputStream fos = new FileOutputStream(f);
fos.write(buffer); //This is where I write it to the C Drive
fos.close();
is.close();
вместо того, чтобы записывать его на мой диск C, я собираюсь запустить его на сервере, но где я должен хранить изображение для последующего поиска и отображения в файле xhtml? Я надеюсь, что я буду разбираться в том, что мне нужно, дайте мне знать, если я не буду, и я попытаюсь объяснить по-другому.