Date,java.util.Calendar,java.text.SimpleDateFormat,
很多这样的贴子,搜一下。

解决方案 »

  1.   

    类 java.util.Date 
    java.lang.Object
       |
       +----java.util.Date
    --------------------------------------------------------------------------------public class Date 
    extends Object 
    implements Serializable, Cloneable 
    下列类的父类: 
    Date, Time, Timestamp 
    类 Date 描述了一个精度为毫秒的特定时间实例。 JDK 1.1 以前的版本,类 Date 有两个附加的功能。 它允许将日期解释为年、月、日、时、分和秒值。也允许对日期字符串进行格式化和分析。不幸的是,这些功能的 API 并不遵从国际化惯例。作为 JDK 1.1 的类,Calendar 类用于日期和时间域之间的转换,DateFormat 类用于对日期字符串进行格式化和分析。建议不要使用 Date 类中相应方法。 尽管 Date 类表示通用协调时间 (UTC) ,但它不能确切的表示它,这取决于 Java 虚拟机的主机环境。 在任何情况下,几乎所有现代的操作系统都假设 1  天  = 24 × 60 × 60 = 86400 秒。但是在 UTC 中,每一两年就会有附加的一秒,称为“闰秒”。 闰秒总是作为一天的最后一秒被加入,并且总是加在 11 月 31 日或 6 月 30 日。 例如,由于添加了闰秒,1995 年的最后一分钟长为 61 秒。 大多数的计算机时钟都不足以精确到能够反映出闰秒的差别。 有些计算机标准定义为格林威治标准时间 (GMT),它同国际标准时间 (UT) 是等价的。GMT 是标准的“通俗”名称;UT 是该标准的“科学”名称。 UTC 和 UT 之间的区别是 UTC 是基于原子时钟的,而 UT 是基于宇宙观测,这在实际使用中只是一个细微的不可见的差别。因为地球的转速不是固定的 ( 它以许多复杂的方式加速或减速 ),UT 并不总是固定的方式流逝的。将闰秒引入 UTC ,为的是使 UTC 在 UT1 的 0.9 秒的误差范围内, UT1 是 UT 的修改版。还有其它的时间和日期系统;例如,基于卫星全球定位系统 (GPS) 使用的时标是与 UTC 相同的,但它并不对闰秒进行调整。一个有趣的未来信息来源是美国海军天文台,特别是地址为: http://tycho.usno.navy.mil 
    的时间管理委员会和 
    他们的地址为:http://tycho.usno.navy.mil/systime.html 
    的“时间系统”定义。 
    在所有接受或返回年、月、日、时、分和秒值的 Date 类方法中使用下列表示法: year y 由整数 y  - 1900 表示。 
    month 由 0 到 11 间的一个整数表示;0 表示一月,1 表示二月等等;11 表示 十二月。 
    通常的方式下,日 ( 一月中的日 ) 由 1 到 31 之间的一个整数表示。 
    hour 由 0 到 23 之间的一个整数表示。所以,从午夜到凌晨 1 点,hour 为 0,从中午到下午 1 点,hour 为 12。 
    通常的方式下, minite 由 0 到 59 之间的一个整数表示。 
    second 是 0 到 60 之间的一个整数表示;数值 60 只用于跳跃秒数并且只用于能够正确跟踪闰秒的 Java 实现中。 
    在任何情况下,传给方法的参数不能超出特定的范围;例如,一个日期可能被指定为 1 月 32 日,它将被解释为 2 月 1 日。
    来自: 
    JDK1.0 
    参见: 
    DateFormat, Calendar, TimeZone --------------------------------------------------------------------------------构造子索引 
    Date() 
    分配一个 Date 对象并将它初始化,使它表示根据最近的毫秒时间测定的分配的时间。
    Date(int, int, int) 
    分配一个 Date 对象并将它初始化,使它表示由参数 year、month 和 date 指定的本地时间一天的开始,即午夜。 不推荐使用该方法。 
    Date(int, int, int, int, int) 
    分配一个 Date 对象并将它初始化,使它表示由参数 year、month、date、hrs 和 min 指定的日期特定的本地时间的时、分。 不推荐使用该方法。 
    Date(int, int, int, int, int, int) 
    分配一个 Date 对象并将它初始化,使它表示由参数 year、month、date、 hrs、min 和 sec 指定的日期特定的本地时间的时、分、秒。 不推荐使用该方法。 
    Date(long) 
    分配 Date 对象并初始化它,表示从 GMT 1970 年 1 月 1 日 00:00:00 起指定的毫秒数。 
    Date(String) 
    分配一个 Date 对象并将它初始化,使它表示由字符串 s 指定的日期和时间,该字符串由 parse 方法解释。 不推荐使用该方法。 --------------------------------------------------------------------------------方法索引 
    after(Date) 
    测试该日期是否在某指定的日期之后。 
    before(Date) 
    测试该日期是否在某指定的日期之前。 
    equals(Object) 
    比较两个日期。 
    getDate() 
    返回该日期表示的一月中的日。 不推荐使用该方法。 
    getDay() 
    返回该日期表示的星期。 不推荐使用该方法。 
    getHours() 
    返回该日期表示的时。 不推荐使用该方法。 
    getMinutes() 
    返回该日期表示的分。 不推荐使用该方法。 
    getMonth() 
    返回该日期表示的月。 不推荐使用该方法。 
    getSeconds() 
    返回该日期表示的秒。 不推荐使用该方法。 
    getTime() 
    返回该日期表示的从 GMT 1970 年 1 月 1 日 00:00:00 起的毫秒数。 
    getTimezoneOffset() 
    返回本地时区的偏移量。 不推荐使用该方法。 
    getYear() 
    返回该日期表示的年,并减去 1900。 不推荐使用该方法。 
    hashCode() 
    返回该对象的散列码。 
    parse(String) 
    给定一个表示时间的字符串,分析它并返回时间值。 不推荐使用该方法。 
    setDate(int) 
    将一月中的日设置为指定的数值。 不推荐使用该方法。 
    setHours(int) 
    将该日期的时设置为指定的数值。 不推荐使用该方法。 
    setMinutes(int) 
    将该日期的分设置为指定的数值。 不推荐使用该方法。 
    setMonth(int) 
    将该日期的月设置为指定的数值。 不推荐使用该方法。 
    setSeconds(int) 
    将该日期的秒设置为指定的数值。 不推荐使用该方法。 
    setTime(long) 
    设置日期表示从 GMT 1970 年 1 月 1 日 00:00:00 起的毫秒数。 
    setYear(int) 
    设置该日期的年为指定数值加 1900。 不推荐使用该方法。 
    toGMTString() 
    创建该日期的字符串表示。 不推荐使用该方法。 
    toLocaleString() 
    以依赖实现的形式创建该日期的字符串表示。 不推荐使用该方法。 
    toString() 
    返回该日期规范的字符串表示。 
    UTC(int, int, int, int, int, int) 
    根据参数确定日期和时间。 不推荐使用该方法。 
      

  2.   

    faint
    哪找的这些资料,牛×啊……顺便贴一个:转为不含时分秒的对应数据库日期变量:/**
     * 作者:alphazhao
     * 日期:2002-5-27
     * 描述:将一个string类型为"yyyy-MM-dd"的字符串转换为一个系统日期
     *       日期为util.Date类型无法插入数据库,需改为sql.Date类型
     * */
    public class StringToDate {
      public final static java.sql.Date string2Date(String dateString)
      throws java.lang.Exception {
        DateFormat dateFormat;
        dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH);
        dateFormat.setLenient(false);
        java.util.Date timeDate = dateFormat.parse(dateString);//util类型
        java.sql.Date dateTime = new java.sql.Date(timeDate.getTime());//sql类型
        return dateTime;
      }
    }
    转为含时分秒的对应数据库日期变量:
    /**
     * 作者:alphazhao
     * 日期:2002-5-27
     * 描述:将一个string类型为"yyyy-MM-dd kk:mm:ss"的字符串转换为一个系统日期
     * */
    public class StringToDate {
      public final static java.sql.Timestamp string2Date(String dateString)
      throws java.lang.Exception {
        DateFormat dateFormat;
        dateFormat = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss", Locale.ENGLISH);
        dateFormat.setLenient(false);
        java.util.Date timeDate = dateFormat.parse(dateString);//util类型
        //java.sql.Date dateTime = new java.sql.Date(timeDate.getTime());//sql类型
        java.sql.Timestamp dateTime = new java.sql.Timestamp(timeDate.getTime());//Timestamp类型
        return dateTime;
      }
    }