我将以整条SQL语句放入HashMap中ru:
String baseSql = "select * from testTable";
HashMap map = new HashMap();
map.put("testSql",baseSql);<select id="baseInfo" parameterClass="java.util.HashMap" resultClass="java.util.HashMap">
<![CDATA[
select * from ($testSql$) where 1 = 2;
]]>
</select>将map做为参数传人iBATIS配置文件,不管是使用 # 还是 $ 都会报表名无效或者无效字符的错误,不知道select * from ($testSql$) where 1 = 2;是不是有特殊的配置啊???
String baseSql = "select * from testTable";
HashMap map = new HashMap();
map.put("testSql",baseSql);<select id="baseInfo" parameterClass="java.util.HashMap" resultClass="java.util.HashMap">
<![CDATA[
select * from ($testSql$) where 1 = 2;
]]>
</select>将map做为参数传人iBATIS配置文件,不管是使用 # 还是 $ 都会报表名无效或者无效字符的错误,不知道select * from ($testSql$) where 1 = 2;是不是有特殊的配置啊???
正常的使用是,表名使用$$包起来就可以了
select * from $table_name$ where 1= 2
map.put("testSql",baseSql);<select id="baseInfo" parameterClass="java.util.String" resultClass="java.util.HashMap">
<![CDATA[
$testSql$
]]>
</select>