spring-boot入门(三)前后端分离使用HTML视图
2017-12-09 17:41
766 查看
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
a45a
相关文章推荐
- spring-boot前后端分离跨域问题的解决,主要是使用cors
- SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题的解决方法
- SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题(六)
- 使用Spring Boot的跨源CORS设置,前后端分离的时候
- SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题(二)
- Vue+Springboot前后端分离websocket的使用
- 使用Springboot和Vue开发的CRM系统,真正前后端分离的微服务架构,BAT互联网公司主流技术的集大成者
- shiro,基于springboot,基于前后端分离,从登录认证到鉴权,从入门到放弃
- SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题(一)
- spring-boot入门(二)使用JSP视图
- Spring Boot 官方文档学习(一)入门及使用
- 使用springBoot实现 web后端(二)
- spring boot入门之使用JdbcTemplate
- spring4.2完整web项目(使用html视图解析器)
- Spring 3.x MVC 入门3-1 -- 使用内容协商来实现多视图 示例
- 使用springBoot实现 web后端(一)
- Spring Boot入门——使用jsp
- [置顶] 一步一步学springboot (三)使用jsp页面(视图)
- Spring Boot 官方文档入门及使用
- Spring 3.x MVC 入门3 -- 使用内容协商来实现多视图