- import java.io.File;
- import java.io.FileOutputStream;
- import java.io.OutputStream;
- import com.vaadin.terminal.FileResource;
- import com.vaadin.ui.*;
- public class MyUploader extends CustomComponent
- implements Upload.SucceededListener,
- Upload.FailedListener,
- Upload.Receiver {
- Panel root; // Root element for contained components.
- Panel imagePanel; // Panel that contains the uploaded image.
- File file; // File to write to.
- MyUploader() {
- root = new Panel("My Upload Component");
- setCompositionRoot(root);
- // Create the Upload component.
- final Upload upload =
- new Upload("Upload the file here", this);
- // Use a custom button caption instead of plain "Upload".
- upload.setButtonCaption("Upload Now");
- // Listen for events regarding the success of upload.
- upload.addListener((Upload.SucceededListener) this);
- upload.addListener((Upload.FailedListener) this);
- root.addComponent(upload);
- root.addComponent(new Label("Click 'Browse' to "+
- "select a file and then click 'Upload'."));
- // Create a panel for displaying the uploaded image.
- imagePanel = new Panel("Uploaded image");
- imagePanel.addComponent(
- new Label("No image uploaded yet"));
- root.addComponent(imagePanel);
- }
- // Callback method to begin receiving the upload.
- public OutputStream receiveUpload(String filename,
- String MIMEType) {
- FileOutputStream fos = null; // Output stream to write to
- file = new File("/tmp/uploads/" + filename);
- try {
- // Open the file for writing.
- fos = new FileOutputStream(file);
- } catch (final java.io.FileNotFoundException e) {
- // Error while opening the file. Not reported here.
- e.printStackTrace();
- return null;
- }
- return fos; // Return the output stream to write to
- }
- // This is called if the upload is finished.
- public void uploadSucceeded(Upload.SucceededEvent event) {
- // Log the upload on screen.
- root.addComponent(new Label("File " + event.getFilename()
- + " of type '" + event.getMIMEType()
- + "' uploaded."));
- // Display the uploaded file in the image panel.
- final FileResource imageResource =
- new FileResource(file, getApplication());
- imagePanel.removeAllComponents();
- imagePanel.addComponent(new Embedded("", imageResource));
- }
- // This is called if the upload fails.
- public void uploadFailed(Upload.FailedEvent event) {
- // Log the failure on screen.
- root.addComponent(new Label("Uploading "
- + event.getFilename() + " of type '"
- + event.getMIMEType() + "' failed."));
- }
- }
- 浏览: 15591 次
最新评论
发表评论
-
查看当前类用的那个jar包
2018-08-01 10:51 662/* //查看当前类用的那个j ... -
页面刷新语句
2016-11-09 11:16 376Page.getCurrent().reload(); -
动态定时任务trigger,动态设置cronExpression的值
2016-11-07 14:49 419https://zhidao.baidu.com/questi ... -
Renderer实例
2016-10-20 16:57 707NumberFormat poundformat =Num ... -
遍历table中的行
2016-10-12 14:28 424Collection<?> holdingTab ... -
表格中的格子添加背景色(未验证)
2016-10-11 16:23 421//holdingTable.setStyleName(s ... -
Java 超级链接Link
2016-09-29 17:21 411// Textual link Link link = ne ... -
指定事件处理
2016-09-08 15:44 372creditGrid.addSelectionListen ... -
DAO
2016-09-06 18:08 361@Modifying @Query("upda ... -
java服务器端运行客户端Script
2016-08-31 11:55 430import javax.script.*; import ... -
对List的遍历有三种方式
2016-08-30 17:40 434对List的遍历有三种方 ... -
Java中break return continue 区别
2016-08-25 14:54 3661、return 语句的作用 ... -
javascriptTable排序
2016-08-19 16:00 3831,把需要排序的行放到tbody中(程序会直接取tbody的r ... -
单选圆形框的应用;日期文本框的应用;弹出确认文本框
2016-08-18 16:19 407class1:定义单选按钮的内容 public en ... -
日期格式变化
2016-08-17 20:30 374查询出某天的记录的方法: select t.* from ... -
java如何将从数据库取出的数据预先存入到内存
2016-08-16 11:05 1340http://zhidao.baidu.com/link?u ... -
日期计算
2016-08-15 14:46 357ava中如何获得两个日期之间的天数 Date a1 = n ... -
数据格式整理
2016-08-15 14:36 318JAVA实现给数字加逗号:说明:将float类型的数据转换成以 ...
相关推荐
创建一个处理文件上传的lua脚本,例如`upload_handler.lua`,这个脚本会接收Nginx传递的文件信息,并进行处理,如保存文件、验证文件大小和类型等。示例脚本可能如下: ```lua local function save_file(file) ...
在ThinkPHP 3.2中,Upload类位于`ThinkPHP/Library/Think`目录下,它提供了处理文件上传的基本方法。如果你遇到这个错误,这表明你的项目可能缺少了Upload类文件,或者Composer自动加载机制未正确配置。 要解决这个...
在实际开发中,还可以使用第三方库如jQuery-File-Upload、Dropzone.js来简化文件上传操作,提供更丰富的功能,如多文件上传、进度条显示、拖拽上传等。 总之,上传文件代码涉及到前端与后端的交互,包括HTML、...
创建一个支持文件上传的JSP页面,需要设置表单的enctype属性为"multipart/form-data",同时指定action属性指向处理文件上传的Servlet或JSP。 ```html <input type="file" name="fileToUpload" id="fileToUpload">...
1. 浏览器限制:大多数浏览器对单个文件上传的大小有限制,通常为2MB到10MB。 2. 性能问题:大文件上传可能导致服务器负载增加,处理时间过长。 3. 用户体验:如果文件上传中断,用户可能需要重新开始整个过程。 三...
AjaxUpload则是实现异步文件上传的一种JavaScript库,它允许用户在不刷新整个页面的情况下进行文件上传,提高了用户体验。接下来,我们将详细讨论这两个知识点。 首先,**Spring** 是一个全面的后端应用框架,它...
同时,为了提供良好的用户体验,文件上传进度的反馈、错误处理机制、多文件上传支持以及拖放功能都是常见的优化点。 总的来说,图片和文件上传是现代应用程序的基础部分,涉及前端交互、后端处理、文件存储和安全等...
艾恩ASP无组件上传组件(anupload)是一款专门为ASP环境设计的文件上传工具。该组件虽然自称为“无组件”,但实际上提供了丰富的功能与灵活性,使得在ASP环境下进行文件上传变得简单高效。 #### 主要特点与功能 - ...
- 一个PHP文件上传类通常包含一系列的方法,如`upload()`用于执行实际的文件上传操作,`checkFileSize()`用于检查文件大小,`checkFileType()`用于验证文件类型,`renameFile()`用于重命名文件,以及`handleError()...
ASP文件上传类UpLoadClass2.0是一款专为ASP(Active Server Pages)开发的文件上传组件,它使得在ASP环境中处理文件上传变得简单易行。ASP是一种微软公司的服务器端脚本语言,常用于构建动态网站和Web应用程序。...
在本文中,我们将深入探讨如何配置Nginx以支持文件上传功能,特别是使用upload_module和upload_progress_module这两个第三方模块。Nginx是一个高效且灵活的HTTP服务器和反向代理,由Igor Sysoev开发,它支持模块化的...
这段描述提及的“upload_上传文件_返回文件_”很可能是某个功能或脚本的简要概述,用于帮助初学者理解如何在Python中处理文件上传及返回。下面将详细解释这一过程。 首先,我们需要了解文件上传的基本概念。在Web...
这个“java文件上传代码upload”项目显然关注如何在Java环境下处理文件上传操作。下面将详细介绍Java中实现文件上传的相关知识点。 一、Servlet API与multipart/form-data 在Java Web开发中,文件上传通常通过...
在本例中,"AN-Upload"是这样一个组件,它采用ASP(Active Server Pages)编程语言实现,为开发者提供了简便的文件上传功能。 ASP是一种微软开发的服务器端脚本环境,用于创建动态交互式网页。使用ASP,开发者可以...
Base64和AjaxUpload上传文件代码实例是两种常用的文件上传方式,它们都可以实现文件上传到服务器端,但它们之间有着明显的区别。 Base64上传文件是一种基于文本编码的上传方式,它将文件转换为Base64字符串,然后将...
总之,"Fancy Upload + ASP.NET 大文件上载"是一个综合性的解决方案,结合了前端的用户体验优化和后端的高效处理能力,为用户提供了稳定、安全的大型文件上传功能。开发者可以通过学习和应用这个例子,提升自己在...
本篇文章将详细介绍一个名为"Upload"的PHP文件上传类库,该类库特别之处在于它不仅支持普通文件和图片的上传,还支持Base64编码的图片上传。 1. **Upload类库概述** Upload类库是一个为PHP设计的强大文件上传工具...