我正在尝试学习springFramwork 4,所以我下载了一个测试项目,我安装了sts(弹簧工具),但我没有承担。 看一下servlet-context.xml 我剪了它以查看确切的部分
<beans:beanclass="
org.springframework.web.servlet.view.InternalResourceViewResolver">
<beans:property name="prefix" value="/WEB-INF/views/" />
<beans:property name="suffix" value=".jsp" />
</beans:bean>
<context:component-scan base-package="com.journaldev.spring" />
</beans:beans>
之后有一个HomeController,我找不到任何与此控制器相关的映射,所以如何使用它来请求
@RequestMapping(value = "/login", method = RequestMethod.GET)
public String loginPage(Locale locale, Model model) {
return "login";
}
这是一个请求示例,如果我们调用login.jsp
,它将起作用所以请任何人向我解释这些事情是如何运作的,或者给我一个教程。感谢
答案 0 :(得分:1)
启动应用程序时,此行
<context:component-scan base-package="com.journaldev.spring" />
告诉spring扫描这个包(com.journaldev.spring)是否有注释类(在你的例子中是@Controller)。在那个春天之后,“解析”@RequestMapping注释来伪造映射到这个方法和类的url。
答案 1 :(得分:0)
为此包中的所有类提供<context:component-scan base-package="com.journaldev.spring" />
弹簧扫描,并为使用@Controller
注释的类提供子包并注册它。
with @RequestMapping
匹配请求将路由到此控制器和适当的方法。
当你执行返回String时,它实际上通过视图解析器映射到视图。由于您已配置了视图InternalResourceViewResolver,因此它将使用sting登录,前缀和后缀以及配置的值,并尝试找到该页面。在您的示例中
"/WEB-INF/views/" + "login" + ".jsp"
导致查找
/WEB-INF/views/login.jsp
你可以通过谷歌搜索来获得大量的教程。一些简单的是