在使用SpringMVC的时候发现在浏览器范文JSP页面,可以直接访问JSP页面,但是发现很多时候会使用SpringMVC作为一个跳转
@RequestMapping(value="/useradd.html",method=RequestMethod.GET)
public String addUser(@ModelAttribute("user") User user){
return "useradd"; // 跳转到useradd.jsp页面
}
没有做任何处理,那么这样做的目的是什么呢?屏蔽底层视图实现?
既然都是MVC你这个就叫做"C" Controller 控制器层不仅仅是返回页面 可以做其他的后台操作
你可以去网上看一下springMVC原理流程,controller层会把结果给ViewResvoler处理,就是视图解析器,springMVC配置文件里也有配置视图解析器的前缀和后缀,这样就会转到配置的路径,读取配置的jsp文件。不同的视图解析器可以返回不同结果。目的是让你写代码方便,不用关心具体返回实现,mvc会自动根据配置的视图解析器去处理
有些JSP页面为了防止别人随意访问而放在了WEB-INF目录下,此目录下的JSP是不能够直接访问的,必须要经过Controller进行跳转才能访问。