spring-boot入门(三)使用HTML视图

#spring-boot入门(三)使用HTML作为展示视图

前后端分离能使项目整体开发效率提高,后端无需再像写jsp一样将原本的html改写为jsp,加入jstl表达式或者一些java代码,这对于前端或者后端来说都是一件痛苦的事情。要做到真正的前后端分离,后端只需提供相应的restful接口返回前端请求的数据,同时前后端应用也可以完全分开。
这里作为例子展示,将html模板文件与后端工程置于同一工程里面。

1.搭建基本框架

  • 引入spring boot相关依赖
  • 配置视图前后缀
  • 编写控制层
  • 启动主类

这些东西在前面都已经说过,不再过多阐述,唯一需要注意的是,html作为静态资源需放在resources/static目录下。

控制层,返回视图到index.html

@RestController
public class IndexController {

    @RequestMapping("/")
    public ModelAndView index() {
        return new ModelAndView("index");
    }

}

html模板代码index.html,文件位于/resources/static目录下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
-----hello jasonLin!------
</body>
</html>

资源访问路径配置:

#MVC
spring.mvc.view.prefix=/
spring.mvc.view.suffix=.html

pom.xml只需一个依赖即可

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
</dependency>

工程结构如下,红线划掉的可以忽略:
这里写图片描述

##2.打包运行

注意要想打包成一个可以执行的jar文件,需加入spring boot的一个插件

            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>

用压缩软件打开jar包可以看到资源文件已经被打包到jar包中。

进入jar包所在目录,运行 java -jar命令启动应用:
这里写图片描述

可以看到工程已经成功启动,端口号8089。访问http://localhost:8089/
这里写图片描述

到此已经能访问我们的html页面。

finally:

  • 将html前端的静态资源文件放于后端工程中不是一个好的选择,但是能够快速开发一个web项目。
  • /resources/static静态资源的默认请求路径为/
  • 使用内嵌的容器,避免服务器端繁琐的配置,直接运行java -jar就能运行是不是很easy

3.更改静态资源默认的访问路径

上面说到/resources/static静态资源的默认请求路径为/ 。假如我的静态资源位于/resources/static/dist目录下,但是我不想将请求改为/dist(这里要注意一下html中引用其它资源的相对路径如果是./xxx 在本地更改真个文件加的路径引用的资源文件是能够正常定位,但是在web容器中./xxx需改为/dist/xxx ,这里涉及到web根路径和本地文件路径的问题)可以在application.properties加如下配置:
spring.resources.static-locations=classpath:/static/dist/
这样当我们访问/ 时实际定位的资源文件位置是/resources/static/dist 这样就避免了当更改资源文件的位置时需要更改html中的全部引用。

controller:

@RestController
public class IndexController {

    @RequestMapping("/")
    public ModelAndView index() {
        return new ModelAndView("index");
    }

    @RequestMapping("/homeAction")
    public ModelAndView home() {
        return new ModelAndView("home");
    }
}

resource:

这里写图片描述

application.properties:

这里写图片描述

html:

这里写图片描述

打包运行,访问http://localhost:8089/homeAction
这里写图片描述

到这里一个能访问静态模板资源文件的应用雏形已经具备,一个web项目不仅仅只是视图的访问,还设计到数据库链接、权限过滤、异常处理等等,接下来将讲解使用spring boot与数据库的交互。
以上完整代码放于:https://github.com/Json-Lin/spring-boot-practice/tree/master/spring-boot-paractice-html

  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值