Java – Uploader Kullanimi

Java'da web projelerinizde upload islemlerinizi gerceklestirebilmeniz icin Uploader ozeligine ait librariyleri uygulamaniza eklemeniz ve ilgili kodlarini yazmaniz yeterli olacaktir.
Uygulamamizi gerceklestirebilmemiz icin oncelikle Netbeans'de bir web application'i olusturuyoruz. Olusturulan application'in source packages kisminda yeni bir paket olusturup icerisine bir java class'i aciyoruz.
Yanda gordugunuz gibi gerekli jar'lari projenizin libraries 'ine ekleyebilirsiniz.
commons-fileupload-1.2.2.jar
Proje kodlari yazilip, calistirildigi zaman asagida ki ekran goruntuleri ile karsilasacaksiniz.
Burada oncelikle choose butonu ile karsimiza gelen dialog penceresinden upload edeceginiz dosyayi seciyorsunuz.
Dosya secimi tamamlandiktan sonra Upload butonuna tiklanildiginda is akisini gosteren bir bar gozukmektedir.
Upload islemi tamamlandiktan sonra browser'da bilgi mesaji olarak asagida ki gibi bir sonuc karsiniza cikacaktir.
Dilerseniz simdi gerekli kaynak kodlari yazalim;
FileUploadController Kaynak Kodlari ;
package newpackage; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.Serializable; import java.util.logging.Level; import java.util.logging.Logger; import javax.faces.application.FacesMessage; import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped; import javax.faces.context.FacesContext; import org.primefaces.event.FileUploadEvent; import org.primefaces.model.UploadedFile; @ManagedBean @SessionScoped public class FileUploadController implements Serializable { private String destination = "C:\\tmp\\"; private UploadedFile file; public FileUploadController() { } public UploadedFile getFile() { return file; } public void setFile(UploadedFile file) { this.file = file; } public void handleFileUpload(FileUploadEvent event) { try { copyFile(event.getFile().getFileName(), event.getFile().getInputstream()); FacesMessage msg1 = new FacesMessage("Succesful", event.getFile().getFileName() + " is uploaded."); FacesContext.getCurrentInstance().addMessage(null, msg1); } catch (IOException ex) { FacesMessage msg = new FacesMessage("Select is uploaded."); FacesContext.getCurrentInstance().addMessage(null, msg); Logger.getLogger(FileUploadController.class.getName()).log(Level.SEVERE, null, ex); } } public void copyFile(String fileName, InputStream in) { try { OutputStream out = new FileOutputStream(new File(destination + fileName)); int read = 0; byte[] bytes = new byte<1024>
;
while ((read = in.read(bytes)) != -1) {
out.write(bytes, 0, read);
}
in.close();
out.flush();
out.close();
System.out.println("New file created!");
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
}
Index.Xhtml Kaynak Kodlari ;
<?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:p="http://primefaces.org/ui"> <h:head> <title>Facelet Title</title> </h:head> <h:body> <h:form enctype="multipart/form-data" > <p:fileUpload fileUploadListener="#{fileUploadController.handleFileUpload}" allowTypes="/(\.|\/)(gif|jpe?g|png|pdf)$/" sizeLimit="600000" update="msg" /> <p:growl id="msg" showDetail="true"/> </h:form> </h:body> </html> Keyifli Calismalar Dilerim...
Yorumlar