前台页面form表单
注意enctype="multipart/form-data"
要写上
<form action="http://localhost:8080/manage/manage-model" method="post" enctype="multipart/form-data">
模型描述文件xml:<input type="file" name="File" value=""/><br/>
模型动态库文件dll:<input type="file" name="File" value=""/><br/>
备注:<input type="text" name="remark" value=""/><br/>
模型版本:<input type="text" name="versions" value=""/><br/>
<input type="submit" value="提交"/>
</form>
后台处理
注意:MultipartFile是二进制流要用@Controller
参数接收@RequestParam("File")
要与表单的name="File"
对应
@Controller
@RequestMapping(value = "/manage")
public class ModelStorageManageController {
@Autowired
private ModelStorageManageService modelStorageManageService;
/**
* 前端请求,进行增删改查
*/
//新增模型文件
@PostMapping(value = "/manage-model")
public ResultUtil addModelStorage(ModelStorage modelStorage, HttpServletRequest request, @RequestParam("File") MultipartFile[] multipartFiles) throws IOException {
User user = (User) request.getSession().getAttribute("user");
//从session中取出用户id添加
modelStorage.setUserId(user.getId());
//从上传的xml文件中读取到name和name_english字段
String fileName = UUID.randomUUID().toString();
modelStorage.setFileName(fileName);
for (MultipartFile multipartFile : multipartFiles) {
if (multipartFile.getOriginalFilename().contains(".xml")) {
String folder = "C:/upload/" + fileName.substring(0,7) + "/Model/Config/";
File fileFolder = new File(folder);
if(!fileFolder.exists()){