在SpringMVC应用程序中,第一步可能是将URL映射到一个Controller(而不是Jsp页面)以使用GET方法显示HomePage,不是吗?在我的特色应用程序中填写表单后,同一个控制器获取信息,进行一些验证并返回一个逻辑视图名称到InternalViewResolver以显示第二页。
我的问题是:当用户点击第二页中的图标或按钮时,如何选择下一个控制器来运行?还是一个URL映射?或者其他什么方式?
谢谢! 肯尼斯
答案 0 :(得分:2)
简短的回答是,是的。无论您使用ajax请求还是表单提交,您都需要一个具有相应映射URL的控制器,它将根据您的控制器所包含的代码进一步处理您的请求。
答案 1 :(得分:0)
是的,因为Spring MVC使用的是url模式,它本身就是一种简洁而简单的映射网址集的方法。当用户单击第二页中的图标或按钮时,如何选择下一个控制器运行?还是一个URL映射?或者其他什么方式?
当您在您的视图页面中单击图像或链接时,您允许Controller和DispatcherServlet接收用户的请求,并在该调度请求之后接收到控制器。然后,MappingHandler将通过遵循HttpServletRequest
机制选择哪个是正确的URL请求客户端请求。
public interface HandlerMapping {
HandlerExecutionChain getHandler(HttpServletRequest request) throws Exception;
}
此控制器将完成处理请求/查看页面的实际工作。
请注意:URL模式本身遵循简单的方法来运行正确的URL,方法是分析模式中的每个字符,这些字符必须与URL路径中的相应字符完全匹配,但有两个例外。
在Spring MVC中,您可以执行此操作
<a href="${pageContext.servletContext.contextPath}/othersite"> Other site </a>
或
<spring:url value="/othersite"/>
然后URL模式将由控制器本身匹配。