Java日期时间处理
Java 日期时间处理
一、时间相关类
- java.lang.System
- java.util.Date
- java.util.Calendar
- java.util.GregorianCalendar
- java.util.TimeZone
- java.text.DateFormat
- java.text.DateSimpleFormat
- java.sql.Date
- java.sql.Time
- java.sql.Timestamp
二、各个类之间的关系

三、常见问题及解决
1、什么是UTC/UT?
- UTC:世界标准时间
- UT:世界时间
2、什么是GMT?
- 格林威治标准时间
3、怎样获取当前时间?
//在1970年1月1日UTC之间的当前时间和午夜之间的差异,以毫秒为单位。
long ctm = System.currentTimeMillis();
//分配一个 Date对象并对其进行初始化,以便它表示分配的时间,测量到最近的毫秒。
Date d = new Date();
//使用默认时区和区域设置获取日历。 Calendar返回的是基于默认时区的当前时间,默认为FORMAT区域设置。
Calendar cal = Calendar.getInstance(); //Calendar是抽象类,不能直接实例化
System.out.println(ctm); //1535808760490
System.out.println(d); //Sat Sep 01 21:32:40 CST 2018
System.out.println(cal); //包含所有日期相关的属性,可以通过get()方法获得对应属性的值
4、怎样格式化时间?
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh-mm-ss"); // yyyy-MM-dd hh-mm-ss可以替换,具体类型可以查找Java API
String tssdf = sdf.format(d);
5、怎样将一个字符串转换为日期/时间格式?
java.util.Date中的获取单个时间日期的方法已被废弃,要获取这类值,可以使用java.util.Calendar中的相关方法。
示例:
Calendar cj=new GregorianCalendar(TimeZone.getTimeZone("PRC")); //中国时间
int hod=cj.get(Calendar.HOUR_OF_DAY); //该方法返回int型
System.out.println("24小时制小时: "+hod); //24小时制小时
System.out.println("12小时制小时: "+cj.get(Calendar.HOUR)); //12小时制小时
System.out.print(cj.get(Calendar.HOUR_OF_DAY)+" 时 "); //12小时制小时
System.out.print(cj.get(Calendar.MINUTE)+" 分 "); //分钟
System.out.println(cj.get(Calendar.SECOND)+" 秒"); //秒
System.out.println("毫秒: "+cj.get(Calendar.MILLISECOND)); //毫秒
System.out.print(cj.get(Calendar.YEAR)+" 年 "); //年
System.out.print((cj.get(Calendar.MONTH)+1)+" 月 "); //月
System.out.println(cj.get(Calendar.DATE)+" 日"); //日
- 示例输出:
24小时制小时: 22
12小时制小时: 10
22 时 56 分 7 秒
毫秒: 559
2018 年 9 月 1 日
6、怎样处理从数据库中获取的日期/时间?
日期格式化:
Date d = res.getDate("stu_date"); //获取日期(只包含年月日)
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
String dsdf = sdf.format(d); // 2018年07月25日
时间格式化:
Time t = res.getTime("stu_date"); //获取时间(只包含时分秒)
SimpleDateFormat sdf = new SimpleDateFormat("hh时mm分ss秒");
String tsdf = sdf.format(t); // 12时13分35秒
完整时间格式化:
Timestamp ts = res.getTimestamp("stu_date");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh-mm-ss");
String tssdf = sdf.format(ts);
Java日期时间处理的更多相关文章
- Java 日期时间
Java 日期时间 标签 : Java基础 Date java.util.Date对象表示一个精确到毫秒的瞬间; 但由于Date从JDK1.0起就开始存在了,历史悠久,而且功能强大(既包含日期,也包含 ...
- Java日期时间使用(转)
Java日期时间使用总结 转自:http://lavasoft.blog.51cto.com/62575/52975/ 一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个 ...
- Java日期时间,以及相互转换
Java日期时间,以及相互转化 package com.study.string; import java.text.ParseException; import java.text.SimpleDa ...
- Java 日期时间 Date类型,long类型,String类型表现形式的转换
Java 日期时间 Date类型,long类型,String类型表现形式的转换 1.java.util.Date类型转换成long类型 java.util.Date dt = new Date(); ...
- Java日期时间使用总结[转载]
Java日期时间使用总结 一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中,日期的国际化,日期和时间之间的转换,日期的加减运算,日期的展示格式 ...
- Java-Runoob:Java 日期时间
ylbtech-Java-Runoob:Java 日期时间 1.返回顶部 1. Java 日期时间 java.util 包提供了 Date 类来封装当前的日期和时间. Date 类提供两个构造函数来实 ...
- Java日期时间实用工具类
Java日期时间实用工具类 1.Date (java.util.Date) Date(); 以当前时间构造一个Date对象 Date(long); 构造函数 ...
- Java 日期时间格式化
在此记录Java日期时间格式化转换符,方便以后有需要时查找. 1.日期格式化 2.时间格式化 3.格式化常见的日期时间组合
- Java 日期时间 Date类型,long类型,String类型表现形式的转换 (转)
Java 日期时间 Date类型,long类型,String类型表现形式的转换 1.java.util.Date类型转换成long类型java.util.Date dt = new Date();Sy ...
随机推荐
- 记账本NABCD分析
学生记账本NABCD分析 N(Need,需求) 随着我们进入大学开始逐步的扩大自己的消费水平,而我们每天无法准确的记住一笔一笔的消费记录.常常,每一个月末时我们在宿舍楼道听到不少学生抱怨这个月怎么花钱 ...
- Http原理与实践
Http原理 一.使用Http协议最简单的例子 1.输入URL打开网页 2.AJAX获取数据 3.img标签加载图片 二.Cache-Control 1.public.private 2.must-r ...
- SQL特殊comment语法
SQL 注释的特殊用法: /*!版本号 语句*/ 表示大于等于某个版本是,才执行相应的语句. 在版本为5.7.23的MySQL上做测试如下: 测试1 mysql> select 1 /*!507 ...
- springmvc log4j配置
1. web.xml <!-- 加载Log4J 配置文件 --> <context-param> <param-name>log4jConfigLocation&l ...
- 解决python3.5无法导入cv2.so的问题
问题描述: 在python3.5环境中导入cv2报错,在python2.7中正常.注:命令行的前缀RL_2018HW是python3.5的环境. (RL_2018HW) gordon@gordon-: ...
- Android手机上Audio DSP频率低 memory小的应对措施
我在前面的文章(Android智能手机上的音频浅析)中说过Android手机上有一块专门用于音频处理的DSP,它的特点是频率低(一般几百MHZ).内部memory小(通常不超过100k word).要 ...
- centos7如何查询已运行服务?
使用 systemctl list-unit-files 可以查看启动项 , 因为用chkconfig --list命令出现如下提示: 左边是服务名称,右边是状态,enabled是开机启动,disab ...
- jquery:获取checked复选框的问题
jquery:获取checked复选框的问题 功能描述:要完成一个全选的功能,但总是获取不到复选框的被选中的个数,究其原因,是Jquery中length和checked使用不当所造成的. // 获取所 ...
- postgresql数据库3种程序(rule,trigger ,FUNCTION )
1. CREATE [ OR REPLACE ] RULE name AS ON event TO table_name [ WHERE condition ] DO [ ALSO | INSTEAD ...
- mysql六种日志
错误日志 MySQL服务启动和关闭过程中的信息以及其它错误和警告信息.默认在数据目录下 普通查询日志 用于记录select查询语句的日志.general_log.general_log_file 默认 ...