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"?><jsqlconfig> <jsqlpath path="/JSql-User.xml" /></jsqlconfig>SQL配置文件JSql-User.xml
<?xml version="1.0" encoding="UTF-8"?><jsql namespace="user"><sql id="getusers"><![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.length;i++){%> <%=ids[i]%> <%if(i < ids.length-1){%> , <%}%> <%}%>) <%}%> order by name desc]]></sql></jsql>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());
评论