JFinalSQLJfinal 的 SQL 插件

联合创作 · 2023-09-28 12:48

Jsql 是 Jfinal 的 SQL 插件

主要特点:

  1. SQL与JAVA代码分离

  2. XML配置

  3. JS语法的SQL模板引擎,简单易学

模板标签:

  1. <%=%> ,例如:name = <%=name%>,将转换成 name = ? ,并将参数变量添加到Args中

  2. <%-%> ,例如:name = <%-name%>,将转换成 name = ? ,并将参数变量转义后添加到Args中

  3. <%+%> ,例如:name = <%+name%>,将转换成 name = 'jfinal'

用法:

  1. 主配置文件JSql-Config.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <jsqlconfig>
        <jsqlpath path="/JSql-User.xml" />
    </jsqlconfig>
  2. 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>


  3. JAVA初始化

    new JSqlPlugin("/JSql-Config.xml").start();


  4. 调用SQL

    Map<String, Object> m = new HashMap<String, Object>();
    SqlArgs sqlArgs = JSqlKit.getSqlArgs("user.getusers",m);


  5. 执行SQL语句

    Db.find(sqlArgs.getSql(), sqlArgs.getArgs().toArray());
浏览 1
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报