Spring Boot Freemarker之获取contextPath

2021/06/07 11:19
阅读数 353

第一种:

在springboot的配置文件中,可以指定contextPath,如:

server:
  port: 8848
  servlet:
    #通用请求头,配合freemarker的request-context-attribute属性使用,通过${ctx.contextPath}获取该配置文件的上下文路径(也可以通过这种方式定义请求头)
    context-path: /

定义freemarker的配置:

freemarker:
    request-context-attribute: ctx

就可以通过${ctx.contextPath}获取了

使用如下:

复制代码
$("#grid").jqGrid({
            postData: {},
            url: "${ctx.contextPath}/newProductOffer/getProductPriceHistoryTwiceBargain",
            colNames: [],
            colModel: [],
            rownumbers: true,
            rowNum: 50,//一页显示多少条
            rowList: [50, 100, 150],
            height: 200,
            autowidth: true,
            pager: '#pager3',
            recordpos: 'left',
            shrinkToFit: true,
            autoScroll: false
        });
复制代码

第二种:

也可以自定义:

复制代码
@Configuration

@EnableWebMvc

public class MvcConfig extends WebMvcConfigurerAdapter{

    @Bean

    public FreeMarkerViewResolver freeMarkerViewResolver() {

        System.out.println("MvcConfig.freeMarkerViewResolver()");

        FreeMarkerViewResolver resolver = new FreeMarkerViewResolver();

        resolver.setPrefix("");

        resolver.setSuffix(".ftl");

        resolver.setContentType("text/html; charset=UTF-8");

        resolver.setRequestContextAttribute("request");

        return resolver;

    }

}
复制代码

添加以上的代码之后,就可以在x.ftl文件中使用${request.contextPath}了。

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部