SpringBoot2整合Freemarker获取basePath路径问题

1. 定义FreemarkerView对象


import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.web.servlet.view.freemarker.FreeMarkerView;

public class MyFreemarkerViewer extends FreeMarkerView{
    
    

	@Override
	protected void exposeHelpers(Map<String, Object> model, HttpServletRequest request) throws Exception {
    
    
		super.exposeHelpers(model, request);
        String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + request.getContextPath();
        model.put("basePath", basePath);
	}
	
}

2. 注入视图对象即可

@Configuration
public class WebConfig extends WebMvcConfigurationSupport {
    
    
	@Autowired
	private FreeMarkerViewResolver resolver;

	@PostConstruct
	public void postConstruct(){
    
    
		resolver.setViewClass(MyFreemarkerViewer.class);
	}

}

猜你喜欢

转载自blog.csdn.net/afgasdg/article/details/106417423