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

 

posted @ 2021-10-02 21:28  木有呂朋友  阅读(949)  评论(1编辑  收藏  举报