在vaadin中将文件保存到数据库

时间:2013-07-12 19:40:58

标签: java sql postgresql upload vaadin

您好我正在尝试使用vaadin将文件保存到我的数据库中。我有一个允许用户上传文件的Web应用程序,到目前为止文件上传到我的文件系统。这是我上传的代码:

public class FileUploader implements Receiver, SucceededListener {
        File file;

        public OutputStream receiveUpload(String fileName, String mimeType) {
            FileOutputStream fos = null;

            try {
                file = new File("C:\\Documents and Settings\\ABDEN00U\\Desktop\\tmp\\" + fileName);
                fos = new FileOutputStream(file);   
            } catch (final java.io.FileNotFoundException e) {
                new Notification("Could not open file", e.getMessage(), Notification.TYPE_ERROR_MESSAGE.ERROR_MESSAGE).show(Page.getCurrent());
                return null;
            }

            return fos; 
        }

        @Override
        public void uploadSucceeded(SucceededEvent event) {
            // TODO Auto-generated method stub
            file_upload.setVisible(true);
            file_upload.setSource(new FileResource(file));
        }

我要做的是抓取文件并将其转换为bytearray并将其上传到我的postgres数据库。

1 个答案:

答案 0 :(得分:2)

uploadSucceeded方法中,您可以将file转换为byte[]

如何? Here是一种可能的解决方案。

然后将byte[]存储到数据库的blob字段中。