ssm项目设置首页
一、welcome-file-list
1. 如何设置首页
<welcome-file-list>标签下可以设置多个首页<welcome-file>,容器启动后会在根目录下依次查找匹配的物理存在的文件,返回第一个找到的文件,没有找到报404错误。
<welcome-file-list> <welcome-file>a.jsp</welcome-file> <welcome-file>b.html</welcome-file> <welcome-file>c.html</welcome-file> </welcome-file-list>
首页也可以是WEB-INF目录下的文件。
<welcome-file-list> <welcome-file>/WEB-INF/jsp/index.jsp</welcome-file> </welcome-file-list>
2. 注意点
首页的路径只能是一个实际存在的物理文件地址,不能将首页设置成Servlet或Controller的地址,再通过来Servlet或Controller返回一个页面,例如以下,tomcat会在根目录下的view文件夹查找addUser文件,找不到则报404.
<welcome-file-list> <welcome-file>/view/addUser</welcome-file> </welcome-file-list>
如果确实需要使用控制器来返回页面,可以通过在页面中跳转到控制器路径来实现。建立首页文件home.html,内容如下,URL为跳转路径,再将该页面设置为主页。
<html> <head> <meta http-equiv="Refresh" content="0; URL=/view/addUser"> </head> </html>
3. 可以不设置首页,由SpringMVC来处理根路径应该返回的页面,注意2中是设置首页为控制器路径,此处是不设置首页,不要混淆。不设置首页直接去掉welcome-file-list标签或者
<welcome-file-list> <welcome-file></welcome-file> </welcome-file-list>
对根路径进行映射
@RequestMapping("/") public String indexPage() throws Exception { return "index"; }
或使用<mvc:view-controller />,有2种方法
1. 重定向
<mvc:view-controller path="/" view-name="redirect:/view/index"/>
即如果当前路径是/ 则重定向到/view/index
2. view name
<mvc:view-controller path="/" view-name=admin/index"/>
如果当前路径是/ 则交给相应的视图解析器直接解析为视图 。
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"p:order="2">
<propertyname="viewClass"value="org.springframework.web.servlet.view.JstlView"/>
<propertyname="contentType" value="text/html"/>
<property name="prefix"value="/WEB-INF/jsp/"/>
<property name="suffix"value=".jsp"/>
</bean>
https://blog.csdn.net/xybz1993/article/details/81023955