基于javaMybatis存进时间戳的问题
作者:程杉耘朵 发布时间:2023-11-29 02:55:51
java Mybatis存进时间戳
封装了一个实体类,里面有个字段 Integer createTime。
要利用这个实体类将一个时间戳存进数据库中。
刚开始的时候出现错误:
Data truncation: Incorrect datetime value: '123456789' for column 'create_time' at row 1
是存进数据库的时候出现了问题,个人理解应该是Integer类型和数据库中的Timestamp类型不匹配。
之后把封装类里createTime的类型变成了Timestamp,但是由于我是用Map<String, Object>传过来的参数,取出来的值是Object类型,转换成Timestamp一直出错(可能是我知道的方法不够),于是我又把createTime的封装类变成了Date类型。代码大概如下
Long createTime = Long.parseLong(param.get("CreateTime").toString()); //先用Long接收传过来的参数
Member member = new Member(); //实例化一个实体类
member.setCreateTime(new Date(createTime)); //因为封装类里createTime是Date类型,直接new一个日期,只要把Long类型的数值放进去就可以
这样,将member用Mybatis插入数据库就不会出现问题了。
Mybatis处理相关时间戳格式的数据
1、程序中直接写SQL语句时:
1)如果插入的是当前时间戳,可以在SQL中直接写SYSTIMESTAMP关键字。
2)如果插入的是前台送上来的时间,可以在SQL中使用Oracle的函数进行转换to_date或to_timestamp,
to_timestamp(string, fmt)
fmt可以为空,为空时,string必须符合NLS_TIMESTAMP_FORMAT格式,即 'YYYY-MM-DD HH:MI:SS.FF'
to_date只保存到日期,to_timestamp可以保存到时分秒
2、通过Mybatis进行映射时
如果Entity中定义的类型为Timestamp, resultMap中定义的javaType=“java.sql.Timestamp”, SQL语句中定义的jdbcType=TIMESTAMP
如果Entity中定义的类型为String,resultMap中定义的javaType="java.lang.String",SQL语句中需要对参数进行to_timestamp转换,jdbcType=TIMESTAMP
来源:https://blog.csdn.net/chsyd1028/article/details/73200883
猜你喜欢
- 各位亲们可以尝试以下代码:注:这里我就只有一个html标签对来说明问题了,首部之类的东西,自己添加。<html> &n
- 1. 前言Spring除了IOC和DI,还有另一个杀手锏功能——Spring AOP。AOP是一种面
- 一、链表1.1 概述链表是真正动态的数据结构,最简单的动态数据结构,基本用于辅助组成其他数据结构。数据存储在“节点”(Node)中优点:真正
- 本文实例为大家分享了Struts2框架拦截 器实例的示例代码,供大家参考,具体内容如下在看拦截 器的小例子的前我们先来看看sturts2的原
- java语言里包含了许多对设计模式的直接支持,如command模式,agent模式,observer模式等。虽然java提供的对
- 一、何为栈?栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称
- 光流的概念是由一个叫Gibson的哥们在1950年提出来的。它描述是空间运动物体在观察成像平面上的像素运动的瞬时速度,利用图像序列中像素在时
- 开发环境win10Android Studio效果用于多级菜单展示,或选择。如 每个省,市,县;如 树木的病虫害;关键代码 @overrid
- //构造文件File类File f=new File(fileName);//判断是否为目录f.isDirectory();//获取目录下的
- 前言在网络通信中,通信传输数据容易被截取或篡改,如果在传输用户隐私数据过程中,被不法分子截取或篡改,就可能导致用户受到伤害,比如被诈 骗,所
- File类简介package com.file;import java.io.File;import java.io.IOException
- 公司的svn的地址改变了,怎么办呢。自己本地的正在修改的项目怎么办呢?修改一下svn的服务器地址咯。1.就是先关闭ide,重新打开,然后选择
- 大致分为以下几个方面:一些查询指令整理使用SQL语句进行特殊查询检测表字段是否存在数据库升级数据库表字段赋初始值一、查询指令整理1.链式执行
- Spring Cloud 为开发人员提供了一系列的工具来快速构建分布式系统的通用模型 。例如:配置管理、服务发现、断路由、智能路由、微代理、
- 前言现在开发大部分都是服务化或者微服务,数据交换都是跨服务的,这里记录java调取其他接口的方法,下面话不多说了,来一起看看详细的介绍吧。j
- 目录1. 结论先出JSR 380Valid VS Validated 不同点?Validator2. @Valid和@Validated 注
- 缘起工作时使用java开发服务器后台,用Jersey写Restful接口,发现有一个Post方法始终获取不到参数,查了半天,发现时获取参数的
- Android 无障碍的全局悬浮窗可以在屏幕上添加 UI 供用户进行快捷操作,可以展示在所有应用程序之上长期展示。另一方面,在一些自动化场景
- Java程序有的时候在主线程中会创建多个线程去执行任务,然后在主线程执行完毕之前,把所有线程的任务进行汇总,以前可以用线程的join方法,但
- 以前使用MyEclipse已经习惯了,后来改成Eclipse感觉怪怪的。在创建web项目之前首先配置好jdk环境和tomcat环境(即在开发