从自己的个人独立博客 https://share23.github.io 中迁移与补充
原文链接:Spring Boot 学习笔记
说明:作为基于大数据的餐饮推荐系统可视化部分的内容,与 基于大数据的餐饮推荐系统总结 一起看能加深对整体项目的理解
Spring Boot 是一个轻量级框架。
其设计的目的是用来简化 Spring 应用的初始搭建和开发的过程,使开发者更方便、快捷地开发网站。
// 2018.4.15
因为有个项目需要用一个页面来显示从 HBase 中读取的数据
这只是一个想法
未验证其可行性
// 2018.4.23
已验证其可行性
现已实现从 HBase 中读取的数据然后显示在网页中
实现将其热部署
//2018.9.11
完成博文迁移,并修改与补充部分内容
需要在 Web 界面动态展示 HBase 中的数据
HBase 中的数据是会发送变化的,所以项目需要热部署,并对页面动态刷新。
开发工具: Intellij IDEA
Java版本: 1.8.0_161
├── src │ ├── main │ │ ├── java │ │ │ ├── foodrecommender │ │ │ ├── controller │ │ │ │ └── RecController.java │ │ │ ├── dao │ │ │ │ └── FoodRecDAO.java │ │ │ ├── domain │ │ │ │ └── FoodRec.java │ │ │ ├── utils │ │ │ │ └── HBaseUtils.java │ │ │ │ │ │ │ └── FoodrecomenderApplication.java │ │ │ │ │ └── resources │ │ ├── static │ │ │ ├── css │ │ │ └── images │ │ ├── templates │ │ │ └── index.html │ │ └── application.yml │ │ │ └── test │ ├── pom.xml
根据慕课网上的教程 2小时学会Spring Boot 解锁怎么在 IDEA 新建一个 Spring Boot 项目
并写一个简易的 Hello Spring Boot 显示在网页中
一般都是先在 pom.xml 文件中添加 Thymeleaf 的依赖如下:
<!--Thymeleaf模板--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
在 templates 目录中新建 index.html
(PS: 为了显示的效果,我直接放进一个做好布局静态的 html文件)
采用 ModelAndView 在 RecController.java 中指定 index.html
进行相关测试,能在页面中看到效果。
写一个 HBase 操作工具类 HBaseUtils.java
验证是否能从 HBase 中读取数据
实体类 FoodRec.java
数据访问层 FoodRecDAO.java
参考 Spring Boot和Thymeleaf集成 中 ModelAndView 传值的例子如下:
@RequestMapping(method = RequestMethod.GET) public ModelAndView home(ModelAndView model) { model.getModel().put("firstName", "set param firstname in ModelAndView"); model.getModel().put("lastName", "set param lastname in ModelAndView"); model.setViewName("RequestParam"); return model; }
参考链接如下:
由于 HBase 中的数据是变化的,所以需要动态更新页面
而当前的网站是静态的,只是在启动的时候执行了一次
参考
springboot集成thymeleaf(不重启刷新html)
spring-boot 速成(2) devtools之热部署及LiveReload
他教程中最后那步针对的是 MAC 系统
如果是 Windows 系统可以参考第二个链接中的说明
步骤为 Keymap -> Other -> Maintenance
我找到之后发现他的快捷键为 Ctrl + Alt + Shift + /
在 HBase 中对数据做相关的覆盖操作,发现网站页面上的数据并没有改变
在手动刷新网页后能得到新的结果
但这不能满足我们的需求
根据实际需求在网上找到这篇文章 网页页面 自动刷新的3种代码
采用其中最简单的第一种方法,实现了页面的自动刷新
待上传
从 0 开始到得到我想要的效果。
一个小目标一个小目标的实现,期间经历了多次可行性验证
一开始有很多问题,都借助搜索引擎解决了
参照着 提问的智慧 中的一原则,也向别人请教了一些问题
大多数都是自己解决的
记录下整个过程
这就是我走过的路
原文:https://www.cnblogs.com/share23/p/9631736.html