Dao.xml.vm 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="${package}.dao.${className}Dao">
  4. <resultMap type="${package}.entity.${className}Entity" id="${classname}Map">
  5. #foreach($column in $columns)
  6. <result property="${column.attrname}" column="${column.columnName}"/>
  7. #end
  8. </resultMap>
  9. <select id="queryObject" resultType="${package}.entity.${className}Entity">
  10. select
  11. #foreach($column in $columns)
  12. `$column.columnName`#if($velocityCount != $columns.size()),
  13. #end
  14. #end
  15. from ${tableName}
  16. where ${pk.columnName} = #{id}
  17. </select>
  18. <select id="queryList" resultType="${package}.entity.${className}Entity">
  19. select
  20. #foreach($column in $columns)
  21. `$column.columnName`#if($velocityCount != $columns.size()),
  22. #end
  23. #end
  24. from ${tableName}
  25. WHERE 1=1
  26. <if test="name != null and name.trim() != ''">
  27. AND name LIKE concat('%',#{name},'%')
  28. </if>
  29. <choose>
  30. <when test="sidx != null and sidx.trim() != ''">
  31. order by ${sidx} ${order}
  32. </when>
  33. <otherwise>
  34. order by ${pk.columnName} desc
  35. </otherwise>
  36. </choose>
  37. <if test="offset != null and limit != null">
  38. limit #{offset}, #{limit}
  39. </if>
  40. </select>
  41. <select id="queryTotal" resultType="int">
  42. select count(*) from ${tableName}
  43. WHERE 1=1
  44. <if test="name != null and name.trim() != ''">
  45. AND name LIKE concat('%',#{name},'%')
  46. </if>
  47. </select>
  48. <insert id="save" parameterType="${package}.entity.${className}Entity"#if($pk.extra == 'auto_increment') useGeneratedKeys="true" keyProperty="$pk.attrname"#end>
  49. insert into ${tableName}(
  50. #foreach($column in $columns)
  51. #if($column.columnName != $pk.columnName || $pk.extra != 'auto_increment')
  52. `$column.columnName`#if($velocityCount != $columns.size()),
  53. #end
  54. #end
  55. #end
  56. )
  57. values(
  58. #foreach($column in $columns)
  59. #if($column.columnName != $pk.columnName || $pk.extra != 'auto_increment')
  60. #{$column.attrname}#if($velocityCount != $columns.size()),
  61. #end
  62. #end
  63. #end
  64. )
  65. </insert>
  66. <update id="update" parameterType="${package}.entity.${className}Entity">
  67. update ${tableName}
  68. <set>
  69. #foreach($column in $columns)
  70. #if($column.columnName != $pk.columnName)
  71. <if test="$column.attrname != null">`$column.columnName` = #{$column.attrname}#if($velocityCount != $columns.size()), #end</if>
  72. #end
  73. #end
  74. </set>
  75. where ${pk.columnName} = #{${pk.attrname}}
  76. </update>
  77. <delete id="delete">
  78. delete from ${tableName} where ${pk.columnName} = #{value}
  79. </delete>
  80. <delete id="deleteBatch">
  81. delete from ${tableName} where ${pk.columnName} in
  82. <foreach item="${pk.attrname}" collection="array" open="(" separator="," close=")">
  83. #{${pk.attrname}}
  84. </foreach>
  85. </delete>
  86. </mapper>