学习了java时间的各种操作,总结如下类,大家可供参考。 package xiaojiao.date; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Calendar; import java.sql.Timestamp; import java.util.GregorianCalendar; import java.util.TimeZone; public class DateTest ... { public static void main(String[] args) ...{ /** *//** * 如何得到系统时间 */ //1 System.currentTimeMillis() 用处:测试一段程序的运行时间->(程序结束时间-程序开始时间) System.out.println(System.currentTimeMillis()); //2 Date date = new Date(); Date date = new Date(); //3 Calendar c = Calendar.getInstance(); Calendar c = Calendar.getInstance(); /** *//** * 时间格式化 */ //1 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒"); System.out.println(sdf.format(date)); //2 Calendar.get(Calendar.YEAR); ---Calendar.MONTH---Calendar.DAY_OF_MONTH //c.setTime(date); //setTime(Date)方法将Date类型转换为了Calendar类型 System.out.println(c.get(Calendar.YEAR)+"年"+(c.get(Calendar.MONTH)+1)+"月"+c.get(Calendar.DAY_OF_MONTH)+"日"); /** *//** * 将String 类型的转换为时间类型 实际应用: 页面得到时间字符串然后转换为时间格式入库 * java.lang.Object * |___java.util.Date * |___java.sql.Timestamp * public static Timestamp valueOf(String s)将使用 JDBC 时间戳转义格式的 String 对象转换为 Timestamp 值。 * 参数: * s - 使用 yyyy-mm-dd hh:mm:ss.fffffffff 格式的时间戳 * 返回: * 相应的 Timestamp 值 */ String str = "2008-04-17 21:30:30.0"; Timestamp t = Timestamp.valueOf(str); System.out.println(t); /** *//** * 数据库时间类型Date字段取得后如何处理 * 1 适用ResultSet.getDate("colName")取得后用上面的时间格式化去处理展现 * 2 ResultSet.getDate("colName")得到的时间类型是不含HH:mm:ss的,应用如下方式取得: * Timestamp getTimestamp(String columnName) * throws SQLException以 java.sql.Timestamp 对象的形式检索此 ResultSet 对象的当前行中指定列的值。 * 参数:columnName - 列的 SQL 名称 * 返回:列值;如果值为 SQL NULL,则返回值为 null * 抛出: SQLException - 如果发生数据库访问错误 */ /** *//** * 时区应用 * java.lang.Object * |__java.util.Calendar * |__java.util.GregorianCalendar * GregorianCalendar 是 Calendar 的一个具体子类,提供了世界上大多数国家/地区使用的标准日历系统。 * GregorianCalendar(TimeZone zone) 一个构造方法 * 在具有默认语言环境的给定时区内构造一个基于当前时间的 GregorianCalendar。 * *java.lang.Object * |__java.util.TimeZone * public abstract class TimeZone 抽象类 * static TimeZone::getTimeZone(String ID) 获取给定 ID 的 TimeZone */ Calendar cJapan = GregorianCalendar.getInstance(TimeZone.getTimeZone("Japan")); System.out.println(cJapan.get(Calendar.HOUR_OF_DAY)); /** *//** * 时区字符串getTimeZone(String ID) String ID是定义好的 如何知道 */ for(String s:TimeZone.getAvailableIDs())...{ System.out.println(s); } }}