Template Engine
Template Engine的作用是吧sql语句写到模板中,这样用起来会非常的方便
sql模块提供了#namespace、#sql、#q这三个专用指令管理sql
使用步骤:
new ActiveRecordPlugin
setBaseSqlTemplatePath(…);设置sql文件路径
把sql文件放到setBaseSqlTemplatePath指定的文件下
addSqlTemplate(…)添加外部 sql文件可,以通过多次调用addSqlTemp添late 来加任意多个外部 sql 文件,
并且对于不同的 ActiveRecordPlugin 对象都是彼此独立配置的,非常有利于多数据源下对 sql 进行合理的划分与管理,如下图所示:
- 使用#sql(key) #end 写入sql语句,如下图所示:
- 通过调用Model的getSql(key)方法,获取到sql模板中的语句,如下图所示:
此外,还提供了#p指令用于辅助生成用于查询的sql 与pare两个参数,如下图所示:
注意:使用#p 指令后, java 代码必须使用 getSqlPara(…)方法才可以协同工作。
以上 sql 定义中,使用了 #p(age) 与 #p(weight)指令对参数名与参数位置同时进行了指定,在 java 代码中只需要传入 age、 weight这两个参数就可以同时生成 sql 与其 para,如下图所示:
此外,还提供了 #namepace 指令为 sql 语句指定命名空间,如下所示:
这样相当于建了一个新的表,即使其他地方有重命名也可以使用
上面代码指定了 namespace 为”japan”,在使用的时候,只需要在 key 前面添加 namesapce
值前缀 + 句点符 + key 即可:
以上说明了 sql 管理提供的三个专用指令: #namespace、 #sql、
总结:
看文档,一定要看懂,逐字逐句地分析,跟着文档的方法去一步一步做,而不是无理头的看一遍就算了。只有自己去分析,动脑筋,才能学到东西。