时间类(java.sql.Date & java.util.Date)

※ java.sql.Date类

※ 构造方法摘要
Date(long date)
使用给定毫秒时间值构造一个 Date 对象。

※ 方法摘要
void setTime(long date)
使用给定毫秒时间值设置现有 Date 对象。
String toString()
格式化日期转义形式 yyyy-mm-dd 的日期。
static Date valueOf(String s)
将 JDBC 日期转义形式的字符串转换成 Date 值。

从类 java.util.Date 继承的方法(由此可见,是util.Date的子类)
after, before, clone, compareTo, equals, getDate, getDay, getMonth, getTime, getTimezoneOffset, getYear, hashCode, parse, setDate, setMonth, setYear, toGMTString, toLocaleString, UTC

从类 java.lang.Object 继承的方法
finalize, getClass, notify, notifyAll, wait, wait, wait

※ java.util.Date类

类 Date 表示特定的瞬间,精确到毫秒。
在类 Date 所有可以接受或返回年、月、日期、小时、分钟和秒值的方法中,将使用下面的表示形式:

    1.年份 y 由整数 y - 1900 表示。
    2.月份由从 011 的整数表示;0 是一月、1 是二月等等;因此 11 是十二月。
    3.日期(一月中的某天)按通常方式由整数 131 表示。
    4.小时由从 023 的整数表示。因此,从午夜到 1 a.m. 的时间是 0 点,从中午到 1 p.m. 的时间是 12 点。
    5.分钟按通常方式由 059 的整数表示。
    6.秒由 061 的整数表示;值 6061 只对闰秒发生,尽管那样,也只用在实际正确跟踪闰秒的 Java 实现中。于按当前引入闰秒的方式,两个闰秒在同一分钟内发生是极不可能的,但此规范遵循 ISO C 的日期和时间约定。 

在所有情形中,针对这些目的赋予方法的参数不需要在指定的范围内;例如,可以把日期指定为 1 月 32 日,并把它解释为 2 月 1 日的相同含义。
※ 构造方法摘要
Date()
分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。
Date(long date)
分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。

※ 方法摘要
boolean after(Date when)
测试此日期是否在指定日期之后。
boolean before(Date when)
测试此日期是否在指定日期之前。
Object clone()
返回此对象的副本。
int compareTo(Date anotherDate)
比较两个日期的顺序。
boolean equals(Object obj)
比较两个日期的相等性。
long getTime()
返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
int hashCode()
返回此对象的哈希码值。
void setTime(long time)
设置此 Date 对象,以表示 1970 年 1 月 1 日 00:00:00 GMT 以后 time 毫秒的时间点。
String toString()
把此 Date 对象转换为以下形式的 String: dow mon dd hh:mm:ss zzz yyyy 其中: dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)。

从类 java.lang.Object 继承的方法
finalize, getClass, notify, notifyAll, wait, wait, wait

※ java.sql.Timestamp类

※ 构造方法摘要
Timestamp(long time)
使用毫秒时间值构造 Timestamp 对象。

※ 方法摘要
boolean after(Timestamp ts)
指示此 Timestamp 对象是否晚于给定的 Timestamp 对象。
boolean before(Timestamp ts)
指示此 Timestamp 对象是否早于给定的 Timestamp 对象。
int compareTo(Date o)
将此 Timestamp 对象与给定的 Date(必须为 Timestamp 对象)相比较。
int compareTo(Timestamp ts)
将此 Timestamp 对象与给定 Timestamp 对象相比较。
boolean equals(Object ts)
测试此对象是否等于给定的 Timestamp 对象。
boolean equals(Timestamp ts)
测试此 Timestamp 对象是否等于给定的 Timestamp 对象。
int getNanos()
获取此 Timestamp 对象的 nanos 值。
long getTime()
返回此 Timestamp 对象表示的自 1970 年 1 月 1 日 00:00:00 GMT 以来的毫秒数。
void setNanos(int n)
将此 Timestamp 对象的 nanos 字段设置为给定值。
void setTime(long time)
设置此 Timestamp 对象,以表示 1970 年 1 月 1 日 00:00:00 GMT 以后 time 毫秒的时间点。
String toString()
使用 JDBC 时间戳转义格式编排时间戳。
static Timestamp valueOf(String s)
将使用 JDBC 时间戳转义格式的 String 对象转换为 Timestamp 值。

从类 java.util.Date 继承的方法
after, before, clone, getDate, getDay, getHours, getMinutes, getMonth, getSeconds, getTimezoneOffset, getYear, hashCode, parse, setDate, setHours, setMinutes, setMonth, setSeconds, setYear, toGMTString, toLocaleString, UTC

从类 java.lang.Object 继承的方法
finalize, getClass, notify, notifyAll, wait, wait, wait

※ java.text.SimpleDateFormat类

这里写图片描述
这里写图片描述
※ 构造方法摘要
SimpleDateFormat()
用默认的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。
SimpleDateFormat(String pattern)
用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。
SimpleDateFormat(String pattern, DateFormatSymbols formatSymbols)
用给定的模式和日期符号构造 SimpleDateFormat。
SimpleDateFormat(String pattern, Locale locale)
用给定的模式和给定语言环境的默认日期格式符号构造 SimpleDateFormat。

※ 方法摘要
void applyLocalizedPattern(String pattern)
将给定的本地化模式字符串应用于此日期格式。
void applyPattern(String pattern)
将给定模式字符串应用于此日期格式。
Object clone()
创建此 SimpleDateFormat 的一个副本。
boolean equals(Object obj)
比较给定对象与此 SimpleDateFormat 的相等性。
StringBuffer format(Date date, StringBuffer toAppendTo, FieldPosition pos)
将给定的 Date 格式化为日期/时间字符串,并将结果添加到给定的 StringBuffer。
AttributedCharacterIterator formatToCharacterIterator(Object obj)
格式化生成 AttributedCharacterIterator 的对象。
Date get2DigitYearStart()
返回在 100 年周期内被解释的两位数字年份的开始日期。
DateFormatSymbols getDateFormatSymbols()
获取此日期格式的日期和时间格式符号的一个副本。
int hashCode()
返回此 SimpleDateFormat 对象的哈希码值。
Date parse(String text, ParsePosition pos)
解析字符串的文本,生成 Date。
void set2DigitYearStart(Date startDate)
设置 100 年周期的两位数年份,该年份将被解释为从用户指定的日期开始。
void setDateFormatSymbols(DateFormatSymbols newFormatSymbols)
设置此日期格式的日期和时间格式符号。
String toLocalizedPattern()
返回描述此日期格式的本地化模式字符串。
String toPattern()
返回描述此日期格式的模式字符串。

从类 java.text.DateFormat 继承的方法
format, format, getAvailableLocales, getCalendar, getDateInstance, getDateInstance, getDateInstance, getDateTimeInstance, getDateTimeInstance, getDateTimeInstance, getInstance, getNumberFormat, getTimeInstance, getTimeInstance, getTimeInstance, getTimeZone, isLenient, parse, parseObject, setCalendar, setLenient, setNumberFormat, setTimeZone

从类 java.text.Format 继承的方法
format, parseObject

从类 java.lang.Object 继承的方法
finalize, getClass, notify, notifyAll, toString, wait, wait, wait

※ 测试代码

/*
*带前缀java.util的是java.util.Date
*不带前缀的Date是java.sql.Date
*/
package com.briup.jdbc;

import java.sql.Date;
import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;

public class Test {

    //1.时间类型转化都是借助时间戳
    //时间戳:距离197011000秒的时间
    public static void main(String[] args) {

       //1.1 java.util.Date时间输出(精确到秒)
//      java.util.Date d=new java.util.Date();
//      System.out.println(d);//Tue Sep 11 17:08:04 CST 2018

       //1.2 java.sql.Date时间输出(精确到日)
//      Date date=new Date(2018-1900, 9-1, 10);//3918-10-10 方法已过时
//      System.out.println(date);

       //1.3 现在借助时间戳
//      long id=System.currentTimeMillis();//获取时间戳
//      Date date=new Date(id);
//      System.out.println(date);

    //2.将java.util.date转化为java.sql.Date
        java.util.Date d=new java.util.Date();
        Date date=new Date(d.getTime());//系统时间获取时间戳getTime()方法
        System.out.println(date);//2018-09-11

    //3.将java.sql转化为java.util.Date
//      java.util.Date dat=new java.util.Date(date.getTime());//getTime()方法同上
//      System.out.println(dat);//Tue Sep 17:13:53 CST 2018

    //4.java.sql.Timestamp (精确到毫秒,sql.Date子类)
//      Timestamp t=new Timestamp(d.getTime());//d是java.util.Date 将java.util.Date转换为Timestamp
//      System.out.println(t);//2018-09-11 17:14:54.44(.44是毫秒)
//      System.out.println(t.getTime());//1536657348720 当前时间时间戳(毫秒)

    //5.java.text.SimpleDateFormat 时间和字符串之间的转化
        SimpleDateFormat sdf=new SimpleDateFormat("dd-MM-yy");

        //5.1.将时间转化为字符串
//      String df=sdf.format(new java.util.Date());sql由util中转
//      System.out.println(df);

        //5.2.将字符串转化为时间
        String str="18-9-18";
        try {
            java.util.Date ddd=sdf.parse(str);//sql由util中转
            System.out.println(ddd);
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}
  • 6
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值