Spring mvc Spring MVC中的多控制器映射
定义两个控制器用户和数据,如下所示:Spring mvc Spring MVC中的多控制器映射,spring-mvc,Spring Mvc,定义两个控制器用户和数据,如下所示: // 1st Controller @Controller @RequestMapping(value = {"/", "user"}) public class UserLoginController { @Autowired private UserLoginService userLoginService; @RequestMapping(value = "/", method = RequestMethod.GET) p
// 1st Controller
@Controller
@RequestMapping(value = {"/", "user"})
public class UserLoginController {
@Autowired
private UserLoginService userLoginService;
@RequestMapping(value = "/", method = RequestMethod.GET)
public String showLoginForm(@ModelAttribute UserLogin userLogin) {
//model.addAttribute(new UserLogin());
//System.out.println("showLoginForm() is called");
return "loginForm";
}
}
//Second COntroller
@Controller
@RequestMapping(value = "user/data/")
public class WorkplanController {
@Autowired
private WorkplanService WorkplanService;
@RequestMapping(value = "importForm", method = RequestMethod.GET)
public ModelAndView importForm(@ModelAttribute SheetUpload sheetUpload){
return new ModelAndView("uploadWorkplan");
}
@RequestMapping(value= "doUpload", method = RequestMethod.POST)
public ModelAndView doUpload(@RequestParam CommonsMultipartFile[] uploadFile, SheetUpload fileUpload, Workplan workplan, HttpServletRequest request) {
return new ModelAndView("uploadSucess");
}
}
当我向doUpload()发出请求时,它显示HTTP状态400错误。
我的问题有两个方面:
1.为什么我必须包括这样的用户:@RequestMapping(value=“user/data/”)向第二个控制器发出请求为什么不包括这样的@RequestMapping(value=“data/”)呢?
2.要成功调用第二个控制器中的第二个方法,我需要更改什么
这是我试图提交的表格:
<form:form action="doUpload" modelAttribute="sheetUpload" method="post"
enctype="multipart/form-data">
<form:select class="createusers_select_menu" path="From">
<form:option value="">Select...</form:option>
<form:option value="A">A</form:option>
<form:option value="B">B</form:option>
<form:option value="C">C</form:option>
</form:select>
<form:input class="browse_btn" path="uploadFile" type="file" />
<input type="submit" class="selct_workplan_2_btn" name="" value=" "/>
</form:form>
选择。。。
A.
B
C
为什么我必须包括这样的用户:@RequestMapping(value=“user/data/”)向第二个控制器发出请求为什么不包括这样的@RequestMapping(value=“data/”)呢
你不必这么做。将其更改为@RequestMapping(value=“/data”)
要成功调用第二个控制器中的第二个方法,我需要更改什么
试着让它只使用一个文件字段,然后报告。网上有很多教程介绍如何使用Spring上传文件。谢谢@Neil。我变了,工作了。我猜我的netbeans IDE以前是在缓存BCO,但它不起作用。是的,我只需要解决这个问题。现在很清楚下一步该做什么了