oracle时间类型转化成java对象_Oracle数据库date类型与Java中Date的联系与转化
以下是对Java中的日期对象与Oracle中的日期之间的区别与联系做点说明,以期对大家有所帮助。
new Date():分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒),就是系统当前。
new Date(long date) : 分配 Date 对象并初始化此对象,以表示自从标准基准时间
(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。
long getTime() :返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
String toString() :把此 Date 对象转换为以下形式的
String: dow mon dd hh:mm:ss zzz yyyy
其中: dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)。
*****************************************
static Calendar getInstance() :使用默认时区和语言环境获得一个日历。
Date getTime() 返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象。
long getTimeInMillis() :返回此 Calendar 的时间值,以毫秒为单位。
void setTime(Date date) :使用给定的 Date 设置此 Calendar 的时间。
void setTimeInMillis(long millis) :用给定的 long 值设置此 Calendar 的当前时间值。
**** *************************************
new SimpleDateFormate("yyyy-MM-dd hh:mm:ss").format(new Date());返回String类对象
总结:
1、获得系统当前时间
获得long型: System.currentTimeMillis()
获得Data型:new Data();
获得Calendar型:
Calendar c = Calendar.getInstance();
c.setTime(System.currentTimeMillis();
通常获得Calendar后,可以对各个字段进操作;
2、时间的各种类型之间的转换:
Calendar 到Date:c.getTime() 返回一个Date对象
Date 到 Calendar:c.setTime():返回一个Calendar对象
3、关于数据库中时间的存储对象
(1)表示日期和时间的DATA类型,DATA字段中存储的值包含有与世纪、年、月、日、小时、分钟、和秒相对应的“组成部分”,它通过不同的方法显示和操作,它有效地独立于任何塔顶字符串格式
(2)从Oracle 9i开始提供TIMESTAMP类型是DATE类型的有效扩展形式,它提供更大的时间精度,支持多大九位的小孩,同时还能存储时区信息
(3)从Oracle 9i开始INTERVAL类型,它支持存储时间差,并且可以与DATE或者TIMESTAMP加法运算以生成一个新的DATE或者TIMESTAMP
使用SYSDATE选择当前的系统时间,返回DATE类型的值,是数据库所在的操作系统的当前日期和时间
DATE类型的内部表示形式:执行select DUMP(sysdate) from dual;
Typ=13 Len=8: 218,7,3,23,11,27,11,0 结果中逗号分割的值对应于Oracle存储日期和时间的每个部分,(从世纪到秒)所使用的字节
4、DATE对象与字符串之间进行转换
TO_DAT()和TO_CHAR():这两个函数都有三个参数,一个是要转化的值,一个是可选的格式掩码和一个用于指定语言的可选字符串
to
select to_char(sysdate, 'YYYY-MM-DD HH24:MI:SS') from dual;
select to_date('20100323','YYYYMMDD') from dual;
select ename, to_char(hiredate,'ddthMon,YYYY') from emp
where hiredate between
to_date('1980-01-01','YYYY-MM-DD')
and
to_date('1985-01-01','YYYY-MM-DD')
5、常用操作
把程序的数据存到数据库中:
当程序中是String 类型时,SQL文应该用上
to_date(hiredate,'yyyy-mm-dd hh24:mi:ss')这样放到数据库中就是date类型
当程序中是Date类型时,必须先转为String类型,利用
new SimpleDateFormate("yyyy-MM-dd hh:mm:ss").format(new Date())转化
把数据库中数据取出时
要使用to_char(hiredate,'YYYY-MM-DD HH24:MI:SS')变为String类型,
还可以继续利用java.sql.Date.valueOf(String s)
将 JDBC 日期转义形式的字符串转换成 Date 值。
6、取得Oracle数据库时间并存到Java中
从数据库date取得并转为java.util.Date类型
方法一: select to_char(sysdate, 'YYYY-MM-DD HH24:MI:SS') as current_time from dual 取得字符串
DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateString = format.parse(map.get("CURRENT_TIME"));解析后取得Date的类型: Sat Jul 03 13:32:46 CST 2010
format.format(dateString);然后再格式化成想要的格式字符串
format.format(dateString);将Date类型转为想要的格式。但是类型为String。在想变回来时在用parse()方法.
方法一: select (sysdate - 8 / 24 - to_date('1970-01-01', 'yyyy-mm-dd')) * 86400000 current_milli from dual 取得java.math.BigDecimal类型
BigDecimal b = (BigDecimal)dateMap.get("CURRENT_MILLI");
Long dateLong = b.longValue();
new Date(dateLong);取得Date对象,可以处理
oracle时间类型转化成java对象_Oracle数据库date类型与Java中Date的联系与转化相关推荐
- oracle 调用java 类_oracle数据库PL SQL调用Java类程序代码
作为JAVA程序员,对ORACLE的javasource一直是想找个机会下手的.呵呵!风高月夜,此时正下手之机. Oracle有提供一个叫"外部例程"来实现与其他编程语言的访问.例 ...
- MyBatis对于Java对象里的枚举类型处理
平时咱们写程序实体类内或多或少都会有枚举类型属性,方便嘛.但是mybatis里怎么处理他们的增删改查呢? 要求: 插入的时候,会用枚举的定义插入数据库,我们希望在数据库中看到的是数字或者其他东西: 查 ...
- java 不兼容类型_JAVA不兼容的类型:无法将对象转换为我的类型
我试图通过在单独的线程上进行工作并返回所需的对象来对JavaFX中的GUI进行更改.但是,在完成工作和task.setOnSucceeded()之后,我尝试检索创建的对象并得到错误"不兼容的 ...
- java对象流保存表格,序列化表格 (Java 2 Platform SE 5.0)
此字段有两种可能的解释: startMode == DOW_IN_MONTH startDay 指示夏令时是在 startMonth 月份中的哪个日期开始的,该日期可以是从 1 到 28.30 或 3 ...
- java对象添加字段_99.9%的Java程序员都说不清的问题:JVM中的对象内存布局?
在 Java 程序中,我们拥有多种新建对象的方式.除了最为常见的new语句之外,我们还可以通过反射机制.Object.clone方法.反序列化以及Unsafe.allocateInstance 方法来 ...
- java对象流保存表格_使用java对象
<21天学通Java(第7版)>-- 1.3 对象和类 本节书摘来异步社区<21天学通Java(第7版)>一书中的第1章,第1.3节,作者: [美]Rogers Cadenhe ...
- java对象转xml 高性能_xml与java对象的快速互转
做流程图的项目时,新的流程定义为xml的,需要对xml与java对象进行互转 查了一下activiti的转换xml方式,发现转换太麻烦了,需要一步步的解析xml 后面发现直接用jaxb就可以很快实现互 ...
- java 后端如何处理数据库字段类型为Json格式的方法
1.首先是写方法生成一个自定义转换器 import com.alibaba.fastjson.JSONObject; import org.apache.ibatis.type.BaseTypeHan ...
- java 对象之间转换_浅谈java对象之间相互转化的多种方式
浅谈java对象之间相互转化的多种方式,对象,属性,参数,赋值,不支持 浅谈java对象之间相互转化的多种方式 易采站长站,站长之家为您整理了浅谈java对象之间相互转化的多种方式的相关内容. 第一种 ...
最新文章
- 用 Git 和 Github 提高效率的 10 个技巧!
- androidstudio调试android 源码 jni,在android studio下配置gradle用ndk-build和ndk-gbd编译调试JNI...
- Windows自动启动程序的十大藏身之所
- multiprocessing多进程(31-04)创建进程的两种方式
- 一次线上redis报障处理过程
- Colaboratory下载Kaggle数据
- 微信小程序 rpx和px转换
- 使用eclipse开发javaweb注册功能
- 他是奥运会银牌获得者,还是世界知名数学家,他的家族让世界为之倾倒
- 【个人重点】开发中应该重视的几点
- 天津市全国计算机等级报名时间,天津市2018年全国计算机等级考试报名时间及地点...
- 成为高级测试人:软件测试工程师职业素养
- 不会真有人觉得聊天机器人难吧——开篇
- 前端页面的适配使用rem换算---rem详解
- 【JZOJ A组】时空幻境
- gb28181协议java_gb28181开发源码
- bootstrap-toastr 消息通知插
- AArch64架构内存布局及线性地址转换
- springboot bootcdn使用
- flink学习(五)DataStream API
热门文章
- 特征工程(part2)--数值型数据
- Django从理论到实战(part15)--自定义path转换器
- created不能异步_mpvue里created里异步请求结果,如何在beforeMount里获取到呢
- mac版python安装pandas_Mac OS 安装pandas
- 数据结构-常用的查找算法
- 如何给 SAP Fiori Elements 应用的字段添加 value help
- ABAP事物码SFW5里business function前面的双箭头图标是什么含义
- 如何操作SAP UI5应用Footer区域工具栏按钮的背景颜色
- Spring 基于注解(annotation)的配置之@Required注解
- SAP Hybris和ABAP Netweaver里的DAO(Data access object)