本文主要是介绍SpringMVC后台获取form为enctype=multipart/form-data中的字段,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
如果咱们的jsp页面将form表单设为enctype="multipart/form-data"时,从后台获取参数时是获取不到的(request.getParameter),所以为了方便我们可以使用request.getQueryString()来得到他传过来的参数
注:request.url是获取不到拼接的参数的
参考代码如下:
form表单:
<form id="importForm" method="post" enctype="multipart/form-data"
style="padding-left:20px;text-align:center;" οnsubmit="loading('正在导入,请稍等...');"><br/>
<input id="uploadFile" name="file" type="file" style="width:330px"/>导入文件不能超过5M,仅允许导入“xls”或“xlsx”格式文件!<br/>
<input type="text" name="busId" id="busId" style="display:none;" />
</form>
按钮提交:
top.$("#importForm").attr("action","${ctx}/union/unionMember/import?busId="+ids);
top.$("#importForm").submit();
top.layer.close(index);
后台获取:
@RequiresPermissions("union:unionMember:import")
@RequestMapping(value = "import", method=RequestMethod.POST)
public String importFile(MultipartFile file, RedirectAttributes redirectAttributes, HttpServletRequest request, HttpServletResponse response,String busId) {
//因为我只有一个参数,所以我用了直接替换字符串这种比较low的方法
busId=request.getQueryString().replaceAll("busId=","");
return "redirect:"+Global.getAdminPath()+"/union/unionUexambus/?repage";
}
注:以上代码为直接拼接字符串,即业务主键,并不适合一次性传很多参数的情况
这篇关于SpringMVC后台获取form为enctype=multipart/form-data中的字段的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!