java日期时间相关问题小结

1.与日期时间相关的类及它们的关系图:

java.lang.System;

java.util.Date;

java.sql.Date;

java.sql.Time;

java.sql.Timestamp;

java.text.DateFormate(抽象类);

java.text.SimpleDateFormate;

java.util.Carlendar(抽象类);

java.util.GregorianCalendar;

java.util.TimeZone;


2.获取当前时间的几种常用方式:

         方式一:

                   java.uti.Date: Datedate=new Date();

(主要用于显示构造和显示当前时间)

         方式二:

java.sql.Date: Datedate=new Date(System.currentTimeMillis());

(主要用于对数据date字段进行插入)

         方式三:

java.sql.Timestamp:  Timestamp t=newTimestamp(System.currentTimeMillis());

(主要用于对数据库datetime和timestamp字段进行插入)

         方式四:

java.sql.Time:  Time t=new Time (System.currentTimeMillis());

(主要用于对数据库time字段进行插入以及获取当前的时间(HH:mm:ss))

 

         方式五:

                   long millis=System.currentTimeMillis();

(主要用于计算较小的时间差值)

         方式六:

                   Calendar cal=Calendar.getInstance();

                   (主要用于构造一个当前时间的日历对象来获取对应的某个字段如年,月,日等)

         方式七:

                   Calendarcal=GregorianCalendar.getInstance(TimeZone.getTimeZone("Japan"));

                   (主要用于构造指定时区的日历对象来获取对应的某个字段如年,月,日等)

3.根据已有数据来构造日期,时间或者日历对象:

         a.根据已有日期对象来构造日历对象:

                   Calendar cal=Calendar.getInstance();

                   cal.setTime(date);

         b.根据已有日期时间字符串来构造日期对象:

                   方法一:

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

                   java.util.Dated=sdf.parse("1976-09-09 00:10:00");

                   方法二:

                   Timestampt=Timestamp.valueOf("1976-09-09 00:10:00");

        

4.关于日期格式化:

 使用java.text.SimpleDateFormat类:

 第一步:构造具有指定格式的SimpleDateFormat对象

                   方式①:SimpleDateFormatsdf=new SimpleDateFormat(“yyyy/MM/ddHH:mm:ss”);

                   方式②:SimpleDateFormatsdf=new SimpleDateFormat();

                                     sdf. applyPattern(“yyyy/MM/dd HH:mm:ss”);

第二步:使用SimpleDateFormat对象的format方法

              sdf.format(new java.util.Date());

(具体格式参见SimpleDateFormat类)

5.数据库相关问题:

①  mysql数据库相关字段设置说明


②设置相关字段时使用的方法:

设置date字段:setDate(int,java.sql.Date);

设置dateTime和timestamp字段:setTimestamp(int,java.sql.Timestamp);

设置time字段:setTime(int,java.sql.Time);

 

6.关于时区问题:

         使用例子:

Calendarcal=GregorianCalendar.getInstance(TimeZone.getTimeZone("PRC"));

具体参见java.util.TimeZone类

 

7.关于日期加减问题:

 使用java.util.Calendar类的字段操作方法:add(),set(),roll()(等同于add(),除了在完成调用后,更大的字段无变化)方法:

例:Calendarc=Calendar.getInstance();

         c.add(Calendar.YEAR,10);

具体参见java.util.Calendar类

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值