Jsql 是 Jfinal 的 SQL 插件
主要特点:
SQL与JAVA代码分离
XML配置
JS语法的SQL模板引擎,简单易学
模板标签:
<%=%> ,例如:name = <%=name%>,将转换成 name = ? ,并将参数变量添加到Args中
<%-%> ,例如:name = <%-name%>,将转换成 name = ? ,并将参数变量转义后添加到Args中
<%+%> ,例如:name = <%+name%>,将转换成 name = ‘jfinal’
用法:
主配置文件JSql-Config.xml
<?xml version="1.0" encoding="UTF-8"?>
SQL配置文件JSql-User.xml
<![CDATA[ select * from user t where 1 =1 and <%if(typeof(state) != ‘undefined’){%> t.state = <%=state%> <%}%> <%if(typeof(ids) != ‘undefined’){%> and t.id in (<%for(var i=0;i <%=ids[i]%> <%if(i < ids.length-1){%> , <%}%> <%}%>) <%}%> order by name desc ]]>
JAVA初始化
new JSqlPlugin("/JSql-Config.xml").start();
调用SQL
Map<String, Object> m = new HashMap<String, Object>();
SqlArgs sqlArgs = JSqlKit.getSqlArgs(“user.getusers”,m);
执行SQL语句
Db.find(sqlArgs.getSql(), sqlArgs.getArgs().toArray());