Rak*_*oni 7 java spring spring-mvc
我正在使用Spring框架并能够成功上传服务器上的文件.
<form action="upload.do" method="post" enctype="multipart/form-data">
<input type="text" name="description" />
<input type="file" name="locationMapFile" />
........
........
<input type="submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
//控制器层
@RequestMapping(value = "/upload.do", method = {RequestMethod.POST})
public String addEditLocationToCompany(Model model
,@RequestParam("description")String desc
,@RequestParam(value="locationMapFile", required=false) CommonsMultipartFile locationMapFileData)
{
}
Run Code Online (Sandbox Code Playgroud)
到现在一切都很好.现在我使用javascript在表单上添加一些动态隐藏参数.
注意:根据设置,我定义了动态参数名称及其值
<input type="hidden" name="setting_14" value="abcd">
<input type="hidden" name="setting_5" value="xyz">
Run Code Online (Sandbox Code Playgroud)
如何将这些动态参数提取到Spring控制器中.
我试过了
(1)我不能使用@RequestParam,因为不想硬编码参数名
(2)request.getParameter():不工作并返回null,因为这是multipart/form-data请求
(3)我使用过这个链接 如何使用JSP/Servlet将文件上传到服务器? 并尝试过
List<FileItem> items =
new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request);
Run Code Online (Sandbox Code Playgroud)
但在spring中,控制器项为空.所以无法迭代它并从中获取FileItem.
请帮我找出将动态参数的值放入spring框架的方法.
Deb*_*kia 11
您可以使用MultipartHttpServletRequest获取请求参数:
@RequestMapping(value = "/upload.do", method = {RequestMethod.POST})
public String addEditLocationToCompany(Model model
,@RequestParam("description")String desc
,@RequestParam(value="locationMapFile", required=false) CommonsMultipartFile locationMapFileData, MultipartHttpServletRequest mrequest)
{
String value = mrequest.getParameter("setting_14");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20314 次 |
| 最近记录: |