Java Web 设置默认首页

本文介绍如何在Web项目中配置默认首页,包括静态页面和动态页面的设置方法。通过web.xml文件,可以指定访问项目根目录时展示的页面,无论是直接显示静态内容还是通过Servlet返回动态数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、问题描述

这里所谓的默认首页,是指在访问项目根目录时(如 http://localhost:8080/zhx-web/ )展示的页面,通过在web.xml里配置 <welcome-file-list> 实现。分静态页面和动态页面两种:

 

二、静态页面

对于静态页面,只需要在web.xml里添加如下内容即可。这时访问上述链接时得到的就是download.jsp页面的静态内容

    <welcome-file-list>
        <welcome-file>/WEB-INF/views/download.jsp</welcome-file>
    </welcome-file-list>

 

三、动态页面

对于Servlet:

如果某个Servlet的映射路径仅仅为一个正斜杠(/),那么这个Servlet就成为当前Web应用程序的缺省Servlet。 

凡是在web.xml文件中找不到匹配的<servlet-mapping>元素的URL,它们的访问请求都将交给缺省Servlet处理,也就是说,缺省Servlet用于处理所有其他Servlet都不处理的访问请求。

 

对于动态页面(如展示访问servlet后返回数据的页面),可做如下配置,这时访问上述链接时就相当于是访问download这个servlet。

 1     <servlet>
 2         <servlet-name>springmvc</servlet-name> /* a */
 3         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 4         <init-param>
 5             <param-name>contextConfigLocation</param-name>
 6             <param-value>classpath:spring/springmvc-servlet.xml</param-value>
 7         </init-param>
 8         <load-on-startup>1</load-on-startup>
 9     </servlet>
10     <servlet-mapping>
11         <servlet-name>springmvc</servlet-name>
12         <url-pattern>/</url-pattern>
13     </servlet-mapping>
14     <servlet-mapping>
15         <servlet-name>springmvc</servlet-name> /* b */
16         <url-pattern>/download</url-pattern> /* c */
17     </servlet-mapping>
18     <welcome-file-list>
19         <welcome-file>download</welcome-file> /* d */
20     </welcome-file-list>

上面的配置见名知意:

1、a处定义了一个名为springmvc的servlet

2、b、c 进行servlet映射配置,表示在访问/download这个路径时交由springmvc这个servlet处理

2、d处表示让用户在访问上述链接时默认按访问/download这个路径处理,即 http://localhost:8080/zhx-web/download

3、此外,在工程中必须有Controller匹配"download"并进行处理(对Spring MVC而言,其他类似)。如

    @RequestMapping(value = "/download", method = RequestMethod.GET, produces = "text/html;charset=UTF-8")
    public String downloadApk(HttpServletRequest request, HttpServletResponse response, ModelMap model) {
        List<HashMap<String, String>> res = utilService.getApksInfo();
        model.addAttribute("apk", res);
        model.addAttribute("apkNum", res.size());
        return "download";
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值