Spring MVC实现文件上传

@Override
    public String UploadFile(HttpServletRequest request)
        throws IllegalStateException, IOException
    {
        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
        
        // 获取服务器上下文路径
        String path = Global.getFtpDirectory() + "/" + Global.getSw();
        
        // 创建文件存放路径
        File folder = new File(path);
        
        if (!folder.exists())
        {
            folder.mkdirs();
        }
        
        // 获取上传的文件
        MultipartFile multiFile = multipartRequest.getFile("file");
        
        // 获得文件全名
        String fname = multiFile.getOriginalFilename();
        
        // 创建上传文件全信息为查找看是否能读到本次上传文件
        File isfile = new File(path + "/" + fname);
            
        long sizeNum = multiFile.getSize();
        String softVersion = fname.split("v")[1].substring(0, 7);
        String fileNames = path + "/" + fname;
            
        File file = new File(fileNames);
            
        // 如果文件不存在写文件到服务器
        multiFile.transferTo(file);

       return Global.SUCCESS;
    }

   上面是java代码,JSP代码为:

 <body>
    <form action="saveDataFile" id="soft_add" name="data_add" method="post" enctype="multipart/form-data">
		<table width="60%" border="0" align="center" cellpadding="0" cellspacing="0" style="margin-top: 20px;margin-bottom: 15px;">
		  <tr><td align="center"><font size="3"><b> 数   据   文   件   入   库   </b></font></td></tr>
		  <tr><td align="center"><FONT SIZE="" COLOR="red">*</FONT>&nbsp;<font size="2">为必填项</font></td></tr>
		</table>
		
		<table width="60%" border="0" align="center" cellpadding="0" cellspacing="0" class="borderquan">
		  
		  <tr>
		    <td width="20%" height="50" align="center" class="borderbottomright">数据文件</td>
		    <td width="80%" class="borderbottom"><label>
		      <input type="file" name="dataFile" id="dataFile" style="width: 310px;" οnblur="checkDataFile();"/>
		      <FONT SIZE="" COLOR="red" style="font-size: 12px">*  </FONT>
		      <span id="staError" style="font-size: 9pt; font-family: 黑体; color: red"></span>
		      <FONT SIZE="" COLOR="red" style="font-size: 12px"><br />文件名格式如:2_v110.xml&nbsp;&nbsp;&nbsp;&nbsp;下划线前是基站标识,下划线后是数据版本</FONT>
		    </label></td>
		  </tr>
		  <tr>
		    <td width="20%" height="30" align="center" class="borderbottomright">描述</td>
		    <td width="80%" class="borderbottom"><label>
		    <textarea name="descInfo" style="width: 310px;" rows="5"></textarea>
		    </label></td>
		  </tr>
		  <tr>
		    <td height="30" colspan="2" align="center">
		      <input type="button" name="save" class="myBtn" value="保 存" οnclick="submitForm();" />
		      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
		      <input type="button" name="backtrack" class="myBtn" value="返 回" οnclick="goback();"/>
		    </td>
		  </tr>
		</table>
		<table width="99%" cellpadding="0" cellspacing="0" align="center" style="margin-top: 20px;">
                	   <tr>
                	     <td align="center"><font color="red" style="font-size: 15px;">
                	        <c:if test="${result!=null }">
                	             ${result }
                	        </c:if>
                	        </font>
                	     </td>
                	   </tr>
        </table>
	</form>
  </body>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值