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,但它不起作用。是的,我只需要解决这个问题。现在很清楚下一步该做什么了