如果使用velocity 想自定义 spring.velocity.properties.file.resource.loader.class 属性实现加载指定file 或者复杂的页面关系
一般配置如下:
#velocity 模板文件配置
spring.velocity.charset=UTF-8
spring.velocity.content-type=text/html
spring.velocity.properties.input.encoding=UTF-8
spring.velocity.properties.output.encoding=UTF-8
spring.velocity.properties.file.resource.loader.class=com.test.common.FileResourceLoader
spring.velocity.expose-request-attributes=true
spring.velocity.expose-session-attributes=true
spring.velocity.toolbox-config-location=toolbox.xml
spring.velocity.enabled=true
spring.velocity.resource-loader-path=classpath:/templates/
spring.velocity.suffix=.vm
这样的配置一直都不会调用 spring.velocity.properties.file.resource.loader.class 属性中的类
结果一番折腾调整了一个属性就可以啦
spring.velocity.resource-loader-path=classpath:/templates/
修改为
spring.velocity.resource-loader-path=/templates/
不要以classpath: 开头 具体资源就使用
org.apache.velocity.runtime.resource.loader.ResourceLoader
的实现类中的 getResourceStream 方法来读取