第一种:
在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, auto 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}了。