有的时候不喜欢用xml配置文件,但是xml配置文件的开发使用简单,自己经常要用到;

因为代码维护的缘故,有的时候看别人的代码,可能存在大量的mappper文件,也不是你想用注解就用注解的;

下面我还是贴一段代码,BaseResultMap返回的是更多的result,而reulstType只返回一种类型;

resulstMap其实对应注解@Results,resultType对应的是@Result参考第二段代码

  <resultMap id="BaseResultMap" type="XX.XXMatch">
<id column="i_id" jdbcType="BIGINT" property="iId" />
<result column="XX" jdbcType="VARCHAR" property="XX" />
<result column="XX" jdbcType="VARCHAR" property="XX" />
<result column="XX" jdbcType="VARCHAR" property="XX" />
<result column="XX" jdbcType="VARCHAR" property="XX" />
<result column="XX" jdbcType="TIMESTAMP" property="XX" />
<result column="d_create_time" jdbcType="TIMESTAMP" property="dCreateTime" />
<result column="d_update_time" jdbcType="TIMESTAMP" property="dUpdateTime" />
</resultMap>
<sql id="Base_Column_List">
XX, XX, XX, XX, XX, XX,
d_create_time, d_update_time
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from ipps_face_match
where i_id = #{iId,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from ipps_face_match
where i_id = #{iId,jdbcType=BIGINT}
</delete>
<insert id="insert" parameterType="XX.XXMatch">
insert into ipps_face_match (XX, XX, XX,
XX, XX, XX,
d_create_time, d_update_time)
values (#{iId,jdbcType=BIGINT}, #{XX,jdbcType=VARCHAR}, #{XX,jdbcType=VARCHAR},
#{XX,jdbcType=VARCHAR}, #{XX,jdbcType=VARCHAR}, #{XX,jdbcType=TIMESTAMP},
#{dCreateTime,jdbcType=TIMESTAMP}, #{dUpdateTime,jdbcType=TIMESTAMP})
</insert>
    @Insert("insert into t_alarm (index_code, happened_time, address,save_time)"
+ "values (#{indexCode}, #{happenedTime},#{address},#{saveTime})")
@Options(useGeneratedKeys = true)
int save(DeviceAlarm deviceAlarm); //因为返回的字段就是*,所以还是写为*。如果查询一部分字段,不能使用*
@Select("select * from t_alarm order by id desc limit 3")
@Results({
@Result(id = true, column = "id", property = "id"),
@Result(column = "index_code", property = "indexCode"),
@Result(column = "happened_time", property = "happenedTime"),
@Result(column = "address", property = "address"),
@Result(column = "save_time", property = "saveTime"),
// map-underscore-to-camel-case = true 可以实现一样的效果
// @Result(column = "update_time", property = "updateTime"),
})
ArrayList<DeviceAlarm> findTopAlarms();

最新文章

  1. AngularJS---自定义指令
  2. chrome远程调试真机上的app - 只显示空白页面
  3. 浏览器网页判断手机是否安装IOS/Android客户端程序
  4. 周赛-Equidistant String 分类: 比赛 2015-08-08 15:44 6人阅读 评论(0) 收藏
  5. &#39;UIShell.OSGi.MvcWebExtension.BundleRuntimeControllerFactory&#39; did not return a controller for the name &#39;Home&#39;.
  6. matlab之点运算基本思想及几何平移变换
  7. oracle删除当前用户下所有表
  8. iOS触摸事件深入
  9. LeetCode 533. Lonely Pixel II (孤独的像素之二) $
  10. How to kill a particular user terminal on Linux
  11. c/c++ 网络编程 UDP 设定MTU
  12. 重构&mdash;&mdash;与设计模式的恋情
  13. python之路--模块和包
  14. HDU 6433(2的n次方 **)
  15. C# DGVPrinter.cs 打印方法
  16. sleep、yield、wait、join的区别(阿里面试)
  17. js篇之对象数据属性与存取器属性
  18. Mybatis五(一级二级缓存、第三方缓存)
  19. 解决 https 证书验证不通过的问题
  20. 本地hosts文件IP地址解析

热门文章

  1. 每天进步一点点------SOPC的Avalon-MM IP核(一) avalon总线的信号时序
  2. python连接oracle数据库报错&quot;DatabaseError: DPI-1047: 64-bit Oracle Client library cannot be loaded: &quot;解决方案
  3. 03hive_DDL数据定义
  4. c# /MVC设置类的自定义特性
  5. Foreach报错
  6. Apache Thrift Learning Notes
  7. linux 自带php切换xampp
  8. Python实现重命名一个文件夹下的图片
  9. Linux系统常用运维命令汇总
  10. JDBC statement的常用方法