页面静态化是指把动态生成的HTML页面变为静态文件保存,当请求到来,直接访问静态文件,而不需要经过项目服务器的渲染。
1. 配置Nginx代理静态页面
1 | location / { |
然后重启Nginx
。
2. Thymeleaf实现手动把模板渲染结果写入到指定位置
Thymeleaf
手动渲染原理:当与SpringBoot
结合时,放入Model
的数据就会被放到上下文(Context
)中,并且此时模板解析器(TemplateResolver
)已经创建完成(默认模板存放位置:templates
,默认模板文件类型:html
);然后通过模板引擎(TemplateEngine
)结合上下文(Context
)与模板解析器(TemplateResolver
),利用内置的语法规则解析,从而输出解析后的文件到指定目录。
1 | /** |
- 具体实现
相关依赖:
1 | <dependency> |
配置文件:
1 | server: |
接口和实现类:
1 |
|
html模板原型:
1 |
|
启动测试:浏览器访问:http://127.0.0.1:8080/generate/home
或编写测试类测试。
3. 将项目resources目录下静态资源复制到指定位置
相关依赖:
1 | <dependency> |
接口和实现类:
1 | public interface GenerateHtml { |
可在项目启动后执行覆盖拷贝操作:
1 |
|
- 重启测试:
发现指定目录生成了静态文件,并且请求速度得到了极大提升。
生成静态文件:
1 |
|