动力节点旗下在线教育品牌  |  咨询热线:400-8080-105 学Java全栈,上蛙课网
首页 > 文章

Spring MVC返回HTML页面解决方案

08-26 17:47 70浏览
举报 T字号
  • 大字
  • 中字
  • 小字

Spring框架提供了构建Web应用程序的全功能MVC模块,在使用Spring MVC进行WEB开发时我们可能会遇到无法返回HTML页面的情况,本文我们就来解决Spring MVC返回HTML页面的问题。

下面是Spring MVC返回HTML页面的各种解决方案和过程:

1、修改spring-mvc.xml

 <mvc:annotation-driven />
    <mvc:resources location="/build/" mapping="/build/**"/>
    <mvc:resources location="/vendors/" mapping="/vendors/**"/>
    <bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver"
        p:prefix="/WEB-INF/html/" p:suffix=".html" />

2、修改web.xml

<servlet-mapping>

        <servlet-name>spring</servlet-name>

        <url-pattern>/</url-pattern>

    </servlet-mapping>

    <servlet-mapping>

        <servlet-name>jsp</servlet-name>

        <url-pattern>*.html</url-pattern>

    </servlet-mapping>

3、controller书写方法

@RequestMapping(value = "/add", method = RequestMethod.GET)

    public String toAddTest() {

        return "loginhtml";

    }

4、html中引用css和js文件

 <!-- Bootstrap -->

    <link href="./vendors/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">

    <!-- Font Awesome -->

    <link href="./vendors/font-awesome/css/font-awesome.min.css" rel="stylesheet">

    <!-- NProgress -->

    <link href="./vendors/nprogress/nprogress.css" rel="stylesheet">

    <!-- Animate.css -->

    <link href="./vendors/animate.css/animate.min.css" rel="stylesheet">

    <!-- Custom Theme Style -->

    <link href="./build/css/custom.min.css" rel="stylesheet">

5.目录结构

通过下图我们来了解一下这些配置文件的在文件目录中的位置以及整个Spring MVC的目录结构。

6.测试部分

webapp下的html可以访问,build,images,js文件夹下的所有文件都可以访问,当然包括这些文件夹下的HTML页面。

需要注意的是去掉下面代码,根目录HTML仍然可以访问(但是CSS,JS不起作用),jsp不可以访问(当然去掉前也不可以访问)WEB-INF文件夹下的HTML同样出现问题。

<mvc:resources location="/build/" mapping="/build/**"/>

    <mvc:resources location="/vendors/" mapping="/vendors/**"/>

返回的HTML页面中的中文会出现乱码在页面顶部添加如下代码可以解决

 

<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>

当然我们也可以尝试其他方式引入CSS,JS文件:

页面上方添加下面代码:

<%

    String path = request.getContextPath();

    String basePath = request.getScheme() + "://"

            + request.getServerName() + ":" + request.getServerPort()

            + path + "/";

%>

head标签里的最上方(类似下面这种方式)添加:

<head>

<base href="<%=basePath%>">

<title>My JSP 'index.jsp' starting page</title>

    <link rel="stylesheet" type="text/css" href="css/style.css">

 

</head>

当然css文件夹是放在webapp下面。测试证明Spring MVC中这种方式并没有什么作用,不过servlet中这还是一种不错的引入css文件的方式。

上述的几种解决方案虽然并不是全部的Spring MVC返回HTML页面的有效方式,但对于解决一般情况下的Spring MVC无法返回HTML页面的问题足以胜任了。或者,你也有更好的选择,观看本站的Spring MVC视频教程,学习更全面的解决方案。

0人推荐
共同学习,写下你的评论
0条评论
携代码的男孩纸
程序员携代码的男孩纸

24篇文章贡献108038字

作者相关文章更多>

推荐相关文章更多>

DOM渲染的详细过程

QCode09-04 14:38

CSS水平和垂直居中技巧大梳理

Code大师09-04 14:50

mui的input框在IOS系统下无法聚焦或点击多次才能聚焦

不写代码你养我啊08-23 11:14

推荐的-视.频播放器以及在线客服

不写代码你养我啊09-17 18:02

谈谈java多线程的三大特性

要学习了06-18 18:13

发评论

举报

0/150

取消