java配置DataSourceSourceLoader
关于我的previous question,我想知道如何配置DatasourceResourceLoader
以满足我的需求
更具体地说,我是这样调用#parse()
宏的
#parse("$vendorid/template-name.vm")
如何解释#parse()
宏以仅拾取针对特定供应商ID放置的模板
请注意以下几点:
- 我不想更改表结构或
name
列的值李> name
列可能包含冗余值,但是vendorid
和name
上的组合永远不会相同李>
编辑
我知道Velocity的IncludeEventHandler
,如果我可以通过覆盖此事件来解决我的问题,我该怎么做
# 1 楼答案
Velocity的
IncludeEventHandler
无法解决您的问题,因为它只能更改资源的路径,而不能获取资源本身不过,您可以在数据库端创建一个视图,让您准确地获取模板:
这就是MySQL语法,对于其他引擎,您将根据需要使用时间戳类型和/或| |连接运算符
这样,您就有了一个单键列来访问模板,并且可以初始化DataSourceSourceLoader以使用此视图
# 2 楼答案
根据thisreply,用
ResouceLoader
扩展类并将其用作DataSourceResourceLoader
可以无缝地工作