web.xml里的配置:
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/floo/start</url-pattern>
</servlet-mapping>
用来处理的controller
@Controller
public class AccountController {
@Resource
private IService serviceImp;
@RequestMapping("/floo/start")
public ModelAndView show() {
ModelAndView mav = new ModelAndView("../index.jsp");
mav.addObject("arg", serviceImp.getId(123));
return mav;
}
}
这样是正常的
而将web.xml里的
<url-pattern>/floo/start</url-pattern>
改成
<url-pattern>/floo/*</url-pattern>
就会报404,为什么啊?
是不是还有其它的servlet?
当一个url与多个servlet匹配时,则按照 “ 精确路径 > 最长路径>扩展名”这样的优先级匹配到对应的servlet