您当前的位置: 首页 >  sql

衣舞晨风

暂无认证

  • 0浏览

    0关注

    1156博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

MyBatis数据持久化 SQL复用(可重用的 SQL 代码段)

衣舞晨风 发布时间:2016-09-01 21:09:07 ,浏览量:0

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

关注
打赏
1647422595
查看更多评论
立即登录/注册

微信扫码登录

0.0391s