struts2文件上传进度条
① 关于struts2框架的文件上传问题。。。上传的文件超过2MB就报下面的异常,请问怎么解决
在struts.xml中设置
<constant name="struts.multipart.maxSize" value="314572800"></constant> <!-- 允许300M -->
可以允许上传300M的呢!我试了下,上传了个202M的电影,竟然上传成功了!
② struts2+jquery如何实现点击“上传”按钮,实现从本机选择图片,然后自动上传,类似于上传证件的那种
Uploadify是JQuery的一个上传插件,实现的效果非常不错,带进度显示。LZ可以参考下。希望能帮到你!
③ 100分。struts2实现的图片上传 例子
这个就是struts2的,我艹
-------------已在linux服务上线---------------------
private File userfile;
	private String userfileContentType;
	private String userfileFileName;
//get set 略
public void uploadImg() throws Exception {
		Person person = factory.getUserServiceImpl().getCurrentPerson();//得到当前用户
		HttpServletResponse response = ServletActionContext.getResponse();
		HttpServletRequest request = ServletActionContext.getRequest();
		Calendar cal = Calendar.getInstance();
		int yy = cal.get(Calendar.YEAR);
		String savePath = request.getSession().getServletContext().getRealPath("/")+"/upload/images/"+yy+"/";
		String filePath = savePath ;
		File dir = new File(filePath);
		if (!dir.exists()) {
			dir.mkdirs();
		}
		String fileName = userfileFileName;
		String basePath = "upload/images/"+yy+"/";
		String uuid = UUID.randomUUID().toString();
		String fileType=fileName.substring(fileName.length()-3);
		File uploadedFile = new File(filePath + uuid+"."+fileType);
		//userfile.write(uploadedFile);
		InputStream in = null;  
        OutputStream out = null;  
        try {  
            in = new BufferedInputStream(new FileInputStream(userfile), 1024*1024*10);  
            out = new BufferedOutputStream(new FileOutputStream(uploadedFile),  
            		1024*1024*10);  
            byte[] buffer = new byte[1024*1024*10];  
            int len = 0;  
            while ((len = in.read(buffer)) > 0) {  
                out.write(buffer, 0, len);  
            }  
        } catch (Exception e) {  
            e.printStackTrace();  
        } finally {  
            if (null != in) {  
                try {  
                    in.close();  
                } catch (IOException e) {  
                }  
            }  
            if (null != out) {  
                try {  
                    out.close();  
                } catch (IOException e) {  
                    e.printStackTrace();  
                }  
            }  
        } 
response.setContentType("text/html;charaset=utf-8");
		response.getWriter().write("{success:'true',fileURL:'"+basePath + uuid+"."+fileType + "'}");
	}
④ jquery 进度条 struts2
请按照标准的W3C书写
⑤ struts2中在action中怎么对文件上传进行处理
InputStream is = null;
   OutputStream ops = null;
   for (int i = 0; i < file.size(); i++) {
    try {
     TFile tfile = new TFile();
     if (file.get(i) == null) {
      continue;
     }
     is = new FileInputStream(file.get(i));
     //路径
     String root = ServletActionContext.getRequest()
       .getRealPath("/uploads");
     // 根据系统时间取名字
     int pos = this.getFileFileName().get(i).lastIndexOf(".");
     String ext = this.getFileFileName().get(i).substring(pos);
     // 获得系统时间,产生文件名
     long now = System.currentTimeMillis();
     String nowtime = String.valueOf(now);
     File destFile = new File(root + "/", nowtime + ext);
     ops = new FileOutputStream(destFile);
     byte[] b = new byte[400];
     int length = 0;
     while ((length = is.read(b)) > 0) {
      ops.write(b, 0, length);
      // ops.write(b); 这样子同样可行
     }
     tfile.setFileName(getFileFileName().get(i));
     tfile.setFilePath("/uploads/" + nowtime + ext);
     tfile.setFileCreatetime(currentDate);
     tfile.setFileDataid(uptdt.getDataId());
     fileservice.saveFile(tfile);// 保存上传文件信息
    } catch (Exception ex) {
     ex.printStackTrace();
    } finally {
     is.close();
     ops.close();
    }
   }
⑥ Struts2进行文件的上传下载,上传已经成功了,但是文件下载时出现了问题,下载的文件是action代码。
${downloadFileName}
要和action中的属性相同
⑦ 求一java进度条的实现,struts2的,最好是能拿来马上用的,谢了
明确的告诉你,没有,WEB程序是无状态连接的,不能获取的进度,现在看到的那些进度条都是通用JS写的。
⑧ struts2 如何实现上传整个文件夹的功能
一、压缩文件其实是可以0压缩率直接打包,这样其实蛮快的
二、看到网上说Applet可以上传文件夹,具体远离不清楚,你可以看看
三、最笨的方法,用Ajax做一个递归遍历文件夹的函数,如果是文件就上传上去,如果是文件夹就请求后台新建文件夹
四、用JSON格式把目录和文件封装起来,统一传到后台,但是后台处理要比较麻烦
⑨ struts2中文件上传问题
你要学会用debug模式来调试自己的代码。把断点设置在 String root = ServletActionContext.getRequest().getRealPath("/upload");  可以一步步查看每个变量和属性的值 ,这样更容易找到问题。
这里你需要查看root 和 destfile的值 这样很容易看出你得到的路径是否为你想要设置的路劲。
也可以用system.out.println(root) 打印到控制台看一下。
