Struts2文件上传

1、文件上传的前端代码

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title>测试上传文件</title>
   

  </head>
  
  <body>
    <form action="upload.action" method="post" enctype="multipart/form-data">
      <input type="file" name="fileInput"/>
      <input type="submit" value="确定"/>
    </form>
  </body>
</html>

2、后台代码

       private File fileInput;
	private String fileRoot;
	private String fileInputFileName;
	private String fileInputContentType; // 得到上传的文件的数据类型,
	
	。。。。get和set方法。。。。
	
	 方法一:
	//处理上传附件
		if(fileInput != null){
		String savePath = fileRoot + "temp" + getFileSign();
		File destFile = new File(new File(savePath), fileInputFileName);
		try {
			File dir = new File(savePath);
			if(!dir.exists()){
				newFolder(fileRoot + "temp");
			}
			FileUtils.copyFile(fileInput, destFile);
		}catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	 方法二:
	 String path = "D:\\was\\uompfiles\\uomp\\";
		String savePath = fileRoot + "temp" + getFileSign();
		//String savePath = path + "temp" + getFileSign();
		String uuid = UUID.randomUUID().toString();
		System.out.println("===================+fileRoot:"+fileRoot);
		String type = fileInputFileName.substring(fileInputFileName.lastIndexOf(".")+1);
	
	 OutputStream out;
		try{
			File dir = new File(savePath);
			if(!dir.exists()){
				//newFolder(fileRoot + "temp");
				newFolder(path + "temp");
			}
			File newFile = new File(dir,uuid+"."+type);
			InputStream in = new FileInputStream(fileInput);
			out = new FileOutputStream(newFile);
			byte[] buffer = new byte[1024 * 1024];
			int length;
			while ((length = in.read(buffer)) > 0) {
				out.write(buffer, 0, length);
			}
			in.close();
			out.close();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		}


转载于:https://my.oschina.net/u/437232/blog/267728

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值