java.sql.Date,java.sql.Time和java.sql.Timestamp什么区别

Python012

java.sql.Date,java.sql.Time和java.sql.Timestamp什么区别,第1张

【父类】java.util.Date日期格式为:年月日时分秒 

【子类】java.sql.Date日期格式为:年月日[只存储日期数据不存储时间数据] 

【子类】java.sql.Time日期格式为:时分秒 

【子类】java.sql.Timestamp日期格式为:年月日时分秒纳秒(毫微秒)

针对不同的数据库选用不同的日期类型 

·Oracle的Date类型,只需要年月日,选择使用java.sql.Date类型 

·MS Sqlserver数据库的DateTime类型,需要年月日时分秒,选择java.sql.Timestamp类型

------------------------------------------

四种对象内部均使用系统时间作为标准数据

·系统时间:自 1970 年 1 月 1 日 00:00:00 GMT 以来的毫秒数,即格林尼治标准时间GMT) ·本地时间:根据时区不同打印出来的时间[当时区为GMT+0时,系统时间与本地时间相同]我们使用的是以本地时间为参考标准的

//java.util.Date 转换成 java.sql.Date 格式

try{

SimpleDateFormat DateFormate =   new SimpleDateFormat("yyyy-MM-dd hh:mm:ss")

java.util.Date date1 = DateFormate.parse("2011-5-31 14:40:50")

java.sql.Date sqlDate = new java.sql.Date(date1.getTime())

System.out.println(DateFormate.format(sqlDate))

}catch (Exception ex) {

System.out.println(ex.getMessage())

}

//java.sql.Date 转换成 java.util.Date 格式

java.sql.Date sqlDate1=java.sql.Date.valueOf("2005-12-12")

java.util.Date utilDate1=new java.util.Date(sqlDate1.getTime())

System.out.println("java.sql.Date 转换成 java.util.Date 格式:"+f.format(utilDate1))

//java.util.Date转换java.sql.Timestamp

new java.sql.Timestamp(new java.util.Date().getTime())//此处IDE报错

//java.util.Date转换java.sql.Time

new java.sql.Time(new java.util.Date().getTime())

Timestamp timestamp  = new Timestamp(System.currentTimeMillis())

我们可以使用DateFormat处理字符串来定义时间日期的格式

注:String都是先转换为java.util.Date,然后再转换成所需的格式

您应该使用TemporalType.TIMESTAMP将字段映射到java.sql.Timestamp ,因此它还将包含与时间相关的信息,而不仅仅是日期。 相比之下,您使用的类型TemporalType.DATE映射到java.sql.Date ,类包含日,月等信息。

java如何获取当前时间以及格式化需要用到两个类,如下图:

1.获取当前时间,并格式化为(年-月-日 时:分:秒)。

Date t = new Date()

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")

System.out.println(df.format(t))

打印输出结果如下图:

2.将java.util.Date转换为java.sql.Date格式。

java.sql.Date sqld = new java.sql.Date(t.getTime())

System.out.println(sqld)

java.sql.Time sqlt = new java.sql.Time(t.getTime())

System.out.println(sqlt)

java.sql.Timestamp sqlts = new java.sql.Timestamp(t.getTime())

System.out.println(sqlts)

打印输出结果如下图:

“拓展资料——java”:

Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

Java编程语言的风格十分接近C++语言。继承了C++语言面向对象技术的核心,舍弃了容易引起错误的指针,以引用取代;移除了C++中的运算符重载和多重继承特性,用接口取代;增加垃圾回收器功能。

Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。