jsp放在webroot目录下:
这样就可以让用户直接访问。例如在浏览器直接访问login.jsp页面,登录页面的内容可以显示出来。
http://localhost:8080/GOVPFMMIS/pages/login/login.jsp
jsp放在web-inf目录下:
必须要通过请求才能访问,放在web-inf下jsp页面显得要安全。例如在浏览器直接访问login.jsp页面,http://localhost:8080/GOVPFMMIS/WEB-INF/pages/login/login.jsp,会报404的错误,因此,WEB-INF目录下的资源不是为客户直接服务的。在springmvc中的例子如下:
<!-- 对模型视图名称的解析,即在模型视图名称添加前后缀 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- 前缀 -->
<property name="prefix" value="/WEB-INF/pages/" />
<!-- 后缀 -->
<property name="suffix" value=".jsp" />
</bean>
@RequestMapping(params = "loginUI")
public String loginUI() {
return "login/login";
}
在浏览器访问http://localhost:8080/GOVPFMMIS/login.do?loginUI即可跳到login.jsp页面。
注意:放到WEB-INF目录下的文件是不允许采用redirect方式的跳转直接访问的页面,因为重定向是浏览器重新发送请求的,而地址是http://localhost:8080/GOVPFMMIS/WEB-INF/pages/login/login.jsp,所以访问不了login.jsp页面,如下所示是不允许的。
@RequestMapping(params = "loginUI")
public String loginUI() {
return "redirect:login/login";
}