zoukankan      html  css  js  c++  java
  • 时间的问题总结

    要点

    1、数据库时间,实体和Mybatis数据类型之间的对应关系
    2、前端传日期还是字符串
    3、时间格式化(用注解的方式如何去写,出参、入参如何格式化?)
    4、大于、小于在Mybatis中如何写

    code

    实体中的写法

        /**
    	* 创建时间
    	*/
    	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
        private Date createTime;
    	
    	/**
    	* 更新时间
    	*/
    	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
        private Date updateTime;
    	
    

    在Mapper.xml 中

     <select id="query" resultMap="departmentMap">
         SELECT  *  FROM department where 1=1 
         <if test="createTime !=null">
         AND create_time = #{createTime}
         </if>
         <if test="updateTime !=null">
         AND update_time = #{updateTime}
         </if>     
      </select>
    

    或者

    <select id="query" resultMap="departmentMap">
         SELECT  *  FROM department where 1=1 
        <if test="endTime != null">
         AND PREPARATION_TIME <![CDATA[<=]]> #{endTime}
        </if>
        <if test="startTime != null">
             AND PREPARATION_TIME <![CDATA[>=]]> #{startTime}
        </if>
      </select>
    

    总结

    1、时间一般是范围查询,前端传时间类型比较好,可以直接比较

    2、实体写Date类型,xml层直接进行比较或赋值。

    3、数据类型:数据库datetime ,实体Date,Mybatis的映射ResultMap 中可以省略时间类型

    4、格式化: 入参格式化,@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") 前端传的是字符串
    出参格式化,@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")

    心如止水,虚怀如谷
  • 相关阅读:
    XAMPP安装过程中,出现的问题
    Javascript的数据类型和转换
    Vue组件之间的通信
    vue2.0在页面中自定义组件模块,以及页面与组件之间的数据传递
    本地起一个https服务器
    开发人员初始化操作
    添加环境变量
    公钥~gitlab~免密登录
    class继承随笔
    阿里云ECS随笔
  • 原文地址:https://www.cnblogs.com/junzifeng/p/15685693.html
Copyright © 2011-2022 走看看