SpringBoot+Mybatis自动填充更新时间,更新与插入一体化

        mybatis-plus提供了自动填充功能,不过由于是自定义xml映射文件,折腾许久,始终未实现,干脆些自己玩。同时,把数据插入更新集成为一个sql。

        项目背景:SringBoot+Mybatis+Oracle 

直接上源码:




  
    
    
    
    
    
    
    
  
  
  
      begin
	   update ETICKET_TASK
    	set TASK_ID = #{taskId,jdbcType=VARCHAR},
	      BEGIN_TIME = #{beginTime,jdbcType=VARCHAR},
	      END_TIME = #{endTime,jdbcType=VARCHAR},
	      RUNNING_TIME = #{runningTime,jdbcType=VARCHAR},
	      TASK_COUNT = #{taskCount,jdbcType=DECIMAL},
	      LAST_TIMESTAMP = sysdate
	    where TASK_SEQ = #{taskSeq,jdbcType=DECIMAL};
	  if sql%notfound then
           insert into ETICKET_TASK (TASK_SEQ, TASK_ID, BEGIN_TIME, 
		      END_TIME, RUNNING_TIME, TASK_COUNT,LAST_TIMESTAMP)
		    values (ETICKET_TASK_SQUENCE.nextval, #{taskId,jdbcType=VARCHAR}, #{beginTime,jdbcType=VARCHAR}, 
		      #{endTime,jdbcType=VARCHAR}, #{runningTime,jdbcType=VARCHAR}, #{taskCount,jdbcType=DECIMAL},sysdate);
	  end if;
	end;
  

        字段LAST_TIMESTAMP 记录数据库最后更新时间,类型为Date,在插入或者更新直接赋值sysdate,直接更新为数据库当前时间,效果如下 

 

你可能感兴趣的:(工具类)