SpringBoot 部署到 tomcat 上出现静态资源路径缺少项目名问题

freemaker获取系统相对路径方式

  • 如果是ssm项目,可以在spring-mvc.xml中配置



    
    
    
    
    
    
    
    
    

其中最重要的一行是获取 request 的路径信息,在前端页面通过 request 获取如下:

现在已经获取好了当前路径,我们可以在 ftl 页面中获取,也可以在js文件中获取。

ftl 页面:

<#assign base=request.contextPath />



    
    首页
    
    
    

js 文件:

var base = document.getElementById("base").href;
// 与后台交互
_send = function(async, url, value, success, error) {
    $.ajax({
        async : async,
        url : base + '/' + url,
        contentType : "application/x-www-form-urlencoded; charset=utf-8",
        data : value,
        dataType : 'json',
        type : 'post',
        success : function(data) {
            success(data);
        },
        error : function(data) {
            error(data);
        }
    });
};
 
  • 如果是SpringBoot项目,可以在application.properties文件中配置

spring.freemarker.request-context-attribute=request

在 ftl 页面中直接通过 ${request.contextPath} 获取当前路径:

 

你可能感兴趣的:(java,框架)