千家信息网

如何在SpringBoot+Freemarker中获取项目根目录

发表于:2025-11-18 作者:千家信息网编辑
千家信息网最后更新 2025年11月18日,这篇文章给大家分享的是有关如何在SpringBoot+Freemarker中获取项目根目录的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在Freemarker中获取项目根目
千家信息网最后更新 2025年11月18日如何在SpringBoot+Freemarker中获取项目根目录

这篇文章给大家分享的是有关如何在SpringBoot+Freemarker中获取项目根目录的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

在Freemarker中获取项目根目录

好多人 都说:

在配置文件中加入

spring.freemarker.request-context-attribute=request

在页面就可以

<#assign ctx=request.contextPath />

但是发现前台依然为 null(可能是我的配置有问题)

后来发现可以这样使用

<#assign ctx=springMacroRequestContext.contextPath />

不需要多余的配置

Freemark模板引擎路径的几种设置方法

在SpringMVC中我们想返回视图是怎么做的

(1)SpringMVC中当我们想解析jsp视图的时候需要在spring.xml中有如下的配置

在SpringBoot中springboot不推荐我们使用jsp模板

向我们提供了freemark模板模板引擎来解析视图

1.在SpringBoot中如果我们没进行任何配置那么我们只需要在resources目录下创建一个templates文件夹举个例子。

(1).创建一个Controller类返回名称为first的视图

(2).在resource目录下创建一个名为first.ftl的文件(SpringBoot默认解析文件类型为ftl的文件)

(3)first.ftl中的内容

(4)请求结果

从上面的结果可以看出freemark为我们完成了视图解析

那么如果我们如何自定义freemark的模板引擎路径呢

有两种方式

第一种方式:

1.在resource目录下创建一个application.properties文件,SpringBoot在启动加载时会找到resource目录下的

application.properties文件,代码如下

(1)这里划红线的俩个点是需要注意的,对于suffix我们应该非常熟悉因为在之前配置jsp视图解析器的时候就用到过,是视图解析的文件类型(springboot中默认的解析文件类型是ftl,而我们将文件类型更改为fid格式)

(2)template-loader-parh也不难理解就是配置解析视图的路径

(3)目录结构

2.application.properties配置完成后我们看一下效果

以上就是如何通过application.properties配置修改freemark返回路径

第二种方式:

1.创建Java类继承WebMvcConfigurerAdapter

代码如下

目录结构

运行结果

以上就是通过俩种方式配置freemark返回路径

ps:在反复测试freemark返回路径的过程中发现了很有意思的几点感兴趣的可以深入研究一下

(1)springboot如果没配置application.properties文件或者没创建工作类的时候我们都知道默认返回ftl格式文件,但是如果我们通过工具类改变freemark路径我们会发现,虽然我们配置了返回fap类型的文件,但是当我们把fap改成ftl文件之后,freemark仍然可以解析

(2)通过application.properties文件改变freemark返回路径的话,只能解析application.properties设置的文件类型,ftl是无效的

(3)如果同时加载application.properties文件和工具类的话,工具类的权重比较高,freemark会返回工具类中的配置,但是在第一点我说过如果光使用工具类的话freemark是可以返回ftl格式文件的,但是如果application.properties文件和工具类都进行启动的话ftl就无效了

感谢各位的阅读!关于"如何在SpringBoot+Freemarker中获取项目根目录"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

文件 配置 视图 路径 工具 目录 类型 模板 方式 根目录 项目 内容 就是 引擎 时候 格式 结果 代码 更多 篇文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 随机从数据库中取数据 广州超速侠网络技术 播放网络安全的手抄报视频 永劫无间服务器瘫痪原因 青岛南衡网络技术有限公司 湖州车载网络技术 附加数据库失败948 家庭教育及网络安全重庆 长链非编码rna疾病数据库 数据库表中的排序规则是什么 考克兰数据库 网络安全的威胁含义 广播电视网络安全体系建设 数据库原理及应用教程答案修订版 郑州市中奥网络技术网络公司 联通连接网络显示服务器无响应 乐视服务器主机名在哪 北京烽云互联网科技有限公司 互联网科技公司有什么要求 七星共享互联网科技有限公司 印象笔记数据库文件好大 速成输入法软件开发 以色列网络安全大会2020 邹平陶瓷软件开发定制 樱校创建账号说服务器错误怎么办 mysql分离数据库 软件开发的方法和计划 620服务器安装系统 服务器管理添加功能灰色 中小学生家庭教肓和网络安全
0