好像$$之间可以直接接收一个String

解决方案 »

  1.   

    用$$ 在控制台打印一条完整的sql
     用##则是?,预编译处理
      

  2.   

    用$$ 有点宏替换的意思,如下列映射:
    <select id="users" resultMap="user">select * from a $name$</select>,则在传入参数可以queryForList("users", "where name='张三'");
    用##则是预编译处理,传入的是什么类型就是什么类型,如下列映射:
    <select id="users" resultMap="user">select * from a where a.name=#name#</select>,
    你在传入参数时可以queryForList("users", "张三");则生成的sql语句是select * from a where a.name='张三'。
      

  3.   

    #表示参数的方式传入类似于sql语句里的?,$就是简单的字符串替换,用相应的值替换$$里的内容。
      

  4.   

    <select id="users" resultMap="user">select * from a $name$</select>好像不行吧,
    应该这样得
    <select id="users" resultMap="user">select * from a ‘$name$'</select>