文档章节

Spring MVC 指定默认首页的办法

年少爱追梦
 年少爱追梦
发布于 2016/05/29 15:37
字数 322
阅读 1340
收藏 8

                                                Spring MVC 指定默认首页的办法

    用Spring MVC 的时候指定默认首页遇到了一点小小的麻烦,项目的目录结构如下: 

  webapp
           --static
                 --html/login.html
           --WEB-INF

    开始想指定默认页面的时候就像在web.xml文件中配置一下就解决了,可是结果是令人失望的。web.xml 文件配置如下:

<welcome-file-list>
        <welcome-file>static/html/login.html</welcome-file>
</welcome-file-list>

    

  实际结果是css/js文件路劲都报错了,因为是相对路径问题,很明显不能这样使用,用正向mvc指定跳转视图我决定试试。

spring-mvc.xml文件中配置如下:

<bean id="viewResolver"class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
        <property name="prefix" value="/static/html/" />
        <property name="suffix" value=".html" />
 </bean>

web.xml 中配置如下:单独处理 url 为 "/"的请求:

<servlet-mapping>
     <servlet-name>xxx</servlet-name>
      <url-pattern>/</url-pattern>
</servlet-mapping>

    可是结果还是不行,还是路径出了问题,这个时候,重定向的想法出来了,因为重定向的url是在浏览器上可以看见的,跳到指定文件中,这样相对路径问题自然就解决了。

    web.xml 文件配置如下:

     <welcome-file-list>
        <welcome-file></welcome-file>
    </welcome-file-list> 
    <servlet-mapping>
        <servlet-name>xxx</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    默认请求 url "/"的controller

    controller中重定向写法如下:

   @RequestMapping(value="/",method=RequestMethod.GET)
    public String home(){
       return "redirect:/static/html/login.html";
    }

 

© 著作权归作者所有

年少爱追梦
粉丝 35
博文 190
码字总数 119538
作品 0
杭州
程序员
私信 提问
加载中

评论(2)

年少爱追梦
年少爱追梦 博主

引用来自“liyCode”的评论

倒数第二个代码块的welcome file里面什么都不用写吗?

对的,这样才会默认调用初始 url “/”
liyCode
liyCode
倒数第二个代码块的welcome file里面什么都不用写吗?
Spring MVC 实践 - Base

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hanqing280441589/article/details/51831530 标签 : Java与Web Spring Web MVC Spring-Web-MVC是一种基于请求...

菜鸟-翡青
2016/07/05
0
0
spring mvc - 对静态资源的处理

spring mvc - 对静态资源的处理 spring对静态资源文件(js css htm html jpg jepg png bmp)等的处理方式如下: 一、交由上级web容器处理,在web.xml中的org.springframework.web.servlet.Dis...

凯文加内特
2015/06/19
4.6K
3
index.jsp重定向到controller,会不会影响搜索引擎对内容的收录?

我想项目的首页数据就是动态的通过服务器返回的,可是web.xml中 只能指定文件,不能指定struts2的action,也不能指定Spring MVC的url。 按照网上的在index.html中加入重定向标签 可以实现首页...

颖辉小居
2016/09/08
287
0
基于 Spring Boot 的个人博客 - FS-Blog

基于 Spring Boot 的个人博客 1. 涉及技术及工具 核心框架:SpringBoot ORM 框架:MyBatis MyBatis 工具:MyBatis Mapper MVC 框架:Spring MVC 模板引擎:Freemarker 编译辅助插件:Lombok ...

摆码王子
2018/04/25
7.2K
4
Spring mvc 和 CXF 搭建SOAP环境

最近用Spring mvc框架搭建web工程,后因为业务需要重新需要在原有web工程基础上,添加Webservice接口。这就涉及到一个问题: 在spring mvc 配置文件中如何添加一些WS框架。在添加之初发现一个...

long0419
2014/01/14
8.7K
1

没有更多内容

加载失败,请刷新页面

加载更多

怎样在磁盘上查找MySQL表的大小?这里有答案

导读 我想知道 MySQL 表在磁盘上占用多少空间,但看起来很琐碎。不应该在 INFORMATION_SCHEMA.TABLES 中提供这些信息吗?没那么简单! 我想知道 MySQL 表在磁盘上占用多少空间,但看起来很琐碎...

问题终结者
29分钟前
6
0
jQuery load() 方法实现加载远程数据

jQuery load() 方法是简单但强大的 AJAX 方法。load() 方法从服务器加载数据,并把返回的数据放入被选元素中。 语法: $(selector).load(URL,data,callback);必需的 URL 参数规定您希望加载的...

前端老手
30分钟前
5
0
Spring Boot缓存实战 Redis 设置有效时间和自动刷新缓存-2

问题 上一篇Spring Boot Cache + redis 设置有效时间和自动刷新缓存,时间支持在配置文件中配置,说了一种时间方式,直接扩展注解的Value值,如: @Override@Cacheable(value = "people#${s...

xiaolyuh
39分钟前
9
0
怎样在磁盘上查找MySQL表的大小?这里有答案

我想知道 MySQL 表在磁盘上占用多少空间,但看起来很琐碎。不应该在 INFORMATION_SCHEMA.TABLES 中提供这些信息吗?没那么简单! 我想知道 MySQL 表在磁盘上占用多少空间,但看起来很琐碎。不应...

Linux就该这么学
今天
5
0
Redis

一、Redis支持的几种数据类型:字符串、List、SET、HASH、ZSET 二、Redis的缓存技术主要是为了降低关系数据库的负载并减少网站成本 三、在Redis里面,被MULTI命令和EXEC命令包围的所有命令会...

BobwithB
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部