改造iBatis,使其支持自动生成sql语句(3)

 

  更新了一下,更新日志:

  1. 使generate其支持statment和sql断。
  2. insert段支持exclude。
  3. delete语句可以不需要parameterMap。
  4. generate段支持for属性,可以指定生成哪种类型的sql。

  更新的是重要目的是只需要一个parametermap。

xml 代码
  1. xml version="1.0" encoding="UTF-8"?>  
  2.     "http://ibatis.apache.org/dtd/sql-map-2.dtd">  
  3.   
  4. <sqlMap namespace="sort">  
  5.   <typeAlias alias="Sort" type="com.cpcw.product.domain.Sort"/>  
  6.   
  7.   <parameterMap id="SortParameterMap" class="Sort">  
  8.     <parameter property="name" column="name" jdbcType="VC"/>  
  9.     <parameter property="fid" column="fid" jdbcType="INTEGER"/>  
  10.     <parameter property="status" column="status" jdbcType="INTEGER"/>  
  11.     <parameter property="notes" column="notes" jdbcType="VC"/>  
  12.     <parameter property="created" column="created" jdbcType="TIMESTAMP"/>  
  13.       <parameter property="id" column="id" jdbcType="INTEGER"/>  
  14.   parameterMap>  
  15.     
  16.   
  17.   <parameterMap id="SortParameterDeleteMap" class="Sort">  
  18.     <parameter property="id" column="id"/>  
  19.   parameterMap>  
  20.   
  21.   <select id="selectSort" parameterMap="sort.SortParameterMap" resultClass="Sort">  
  22.     select * from (   
  23.     <generate table="sort" where="id"/>  
  24.     ) a order by id desc limit 1   
  25.   select>  
  26.   
  27.   <insert id="createSort" parameterMap="sort.SortParameterMap">  
  28.     <selectKey keyProperty="id" resultClass="int" type="post">  
  29.       select last_insert_id() as value   
  30.     selectKey>  
  31.     <generate table="sort" excludes="id"/>  
  32.   insert>  
  33.      
  34.   <update id="updateSort" parameterMap="sort.SortParameterMap">  
  35.     <generate where="id" table="sort" excludes="{status,created}"/>  
  36.   update>  
  37.      
  38.   <sql id="include">    <generate table="sort" for="delete" where="id"/>  sql>  
  39.   
  40.   <delete id="deleteSort">  
  41.     <include refid="sort.include"/>  
  42.   delete>  
  43.   
  44.      
  45.   <delete id="deleteSortStatus" >  
  46.     <include refid="sort.include"/> and status = 1    
  47.   delete>  
  48.   
  49.   
  50. sqlMap>  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值