2018-02-01 16:41
@188085240 sql 管理的模板引擎默认用的 FileSource,这个就代表从文件中读取 sql 模板内容,而你可以模仿 FileSource 写一个 DbSource,改而从数据库读 sql 模板内容
做到上面的程度以后,剩下的用法就完全一样了
当然,你存放在数据库中的 sql 模板内容要与存放 sql 文件模板中的内容在格式上要一样,例如下面的格式:
#sql(...)
select * from ...
#end
看下 ActiveRecordPlugin 那一章的 sql 管理相关文档
2018-02-01 16:30
实现一下 ISource 接口, 完成从数据库读取模板内容的功能:
public class DbSource implements ISource {
...
}
然后再实再一下 ISourceFactory,完成 DbSource 的构建:
public class DbSourceFactory implements ISourceFactory {
...
}
配置生效:
activeRecordPlugin.getEngine().setSourceFactory(new DbSourceFactory());
最后在 java 代码中就可以这样来用了:
SqlPara sp = getSqlPara(key);
Db.use(...).find(sp);
注意,以上只是示例,里头有些细节需要你自己完善,单步调试搞清楚原理
2018-02-01 15:13
@海涛大大 再多看看 jfinal 文档模板引擎的 表达式 与 指令 部分,花不了多少时间,20 分钟彻底学会这两者的用法