1、修改pom.xml,升级MyBatis版本升级到3.3.0以上版本 2、刷新maven(两种方式) A. 命令方式 在terminal窗口输入:
mvn clean install -Dmaven.test.skip=true
小注: clean 移除所有上一次构建生成的文件 install 将包安装至本地仓库,以让其它项目依赖 maven.test.skip 跳过测试
该方式需要先定位到pom.xml所在的文件夹,再执行命令。
B. 工具操作方式: 利用idea中的Maven工具来操作,先clean后install AB两种方式,操作完成后,最好刷新一下
如果还是不行,删除一下target文件
3、代码编写
SELECT * FROM tableA
tableA.code=#{code}
AND tableA.city = #{city}
SELECT * FROM tableB
tableB.city IN
(
)
该代码主要演示了:sql片段可以嵌套,可以动态传值,但注意在给property的value传值时,只能用$,用#的会导致在sql中取不到值。 上面用的ide是:IntelliJ IDEA 15.0.6 用property的时候idea有可能报错如下,但编译可以通过不影响使用: 至于sql片段传递固定值,可以参考以下说明
=================传递固定值===================== 这个元素可以被用来定义可重用的 SQL 代码段,可以包含在其他语句中。它可以被静态地(在加载参数) 参数化. 不同的属性值通过包含的实例变化. 比如:
${alias}.id,${alias}.username,${alias}.password
这个 SQL 片段可以被包含在其他语句中,例如:
select
,
from some_table t1
cross join some_table t2
属性值可以用于包含的refid属性或者包含的字句里面的属性值,例如:
sql id="sometable">
${prefix}Table
from
select
field1, field2, field3
小注:传递传递值部分摘自《MyBatis官方文档》,链接地址: http://www.mybatis.org/mybatis-3/zh/sqlmap-xml.html
作者:jiankunking 出处:http://blog.csdn.net/jiankunking