本文目录一览:
- java.sql.Date,java.sql.Time和java.sql.Timestamp什么区别
- java.sql.Timestamp格式错误
- java.sql.Timestamp cannot be cast to java.sql.Date求助
- 怎样在Java中将日期转化插入到数据库
- java如何获取当前时间 年月日 时分秒
- java.lang.ClassCastException: java.sql.Timestamp 是什么异常
java.sql.Date,java.sql.Time和java.sql.Timestamp什么区别
- 父类:
java.util.Date
日期格式为:年月日时分秒 - 子类:
java.sql.Date
日期格式为:年月日(只存储日期数据,不存储时间数据)java.sql.Time
日期格式为:时分秒java.sql.Timestamp
日期格式为:年月日时分秒纳秒(毫微秒) 针对不同的数据库选用不同的日期类型:
- Oracle 的
Date
类型,只需要年月日,选择使用java.sql.Date
类型 - MS Sqlserver 数据库的
DateTime
类型,需要年月日时分秒,选择java.sql.Timestamp
类型
四种对象内部均使用系统时间作为标准数据:
- 系统时间:自 1970 年 1 月 1 日 00:00:00 GMT 以来的毫秒数,即格林尼治标准时间(GMT)
- 本地时间:根据时区不同打印出来的时间(当时区为 GMT+0 时,系统时间与本地时间相同),我们使用的是以本地时间为参考标准的
转换示例:
java.util.Date
转换为 java.sql.Date
try {
SimpleDateFormat DateFormate = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
java.util.Date date1 = DateFormate.parse("2011-5-31 14:40:50");
java.sql.Date sqlDate = new java.sql.Date(date1.getTime());
System.out.println(DateFormate.format(sqlDate));
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
java.sql.Date
转换为 java.util.Date
java.sql.Date sqlDate1 = java.sql.Date.valueOf("2005-12-12");
java.util.Date utilDate1 = new java.util.Date(sqlDate1.getTime());
System.out.println("java.sql.Date 转换成 java.util.Date 格式:" + f.format(utilDate1));
java.util.Date
转换为 java.sql.Timestamp
new java.sql.Timestamp(new java.util.Date().getTime()); // 此处IDE报错
java.util.Date
转换为 java.sql.Time
new java.sql.Time(new java.util.Date().getTime());
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
我们可以使用 DateFormat
处理字符串来定义时间日期的格式
注:String 都是先转换为
java.util.Date
,然后再转换成所需的格式
java.sql.Timestamp格式错误
把 Hibernate 生成的实体类的 Timestamp 类型改成 Java 中的 Date 类型就可以了。还有实体类对应的 Hibernate 的映射文件也改成 date 类型
java.sql.Timestamp cannot be cast to java.sql.Date求助
java.sql.Date → java.sql.Timestamp
new java.sql.Timestamp(yourDate.getTime());
java.sql.Timestamp → java.sql.Date
new java.sql.Date(yourTimestamp.getTime());
界面要显示毫秒的话,在 date 传到前面时转化格式即可!
怎样在Java中将日期转化插入到数据库
Java 中将日期转化插入到数据库:
public static Date dateTimeString2Date(String date_str) {
try {
Calendar cal = Calendar.getInstance();
java.sql.Timestamp timestampnow = new java.sql.Timestamp(cal.getTimeInMillis());
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
ParsePosition pos = new ParsePosition(0);
java.util.Date current = formatter.parse(date_str, pos);
timestampnow = new java.sql.Timestamp(current.getTime());
return timestampnow;
} catch (NullPointerException e) {
return null;
}
}
// 格式以上面不一样 yyyy-MM-dd
public static Date dateString2Date(String date_str) {
try {
Calendar cal = Calendar.getInstance();
java.sql.Timestamp timestampnow = new java.sql.Timestamp(cal.getTimeInMillis());
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
ParsePosition pos = new ParsePosition(0);
java.util.Date current = formatter.parse(date_str, pos);
return current;
} catch (NullPointerException e) {
return null;
}
}
插入数据库,用 java.sql.PreparedStatement
即可。
java如何获取当前时间 年月日 时分秒
Java 中获取当前时间以及格式化需要用到两个类:
1. 获取当前时间,并格式化为(年-月-日 时:分:秒)
Date t = new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(df.format(t));
打印输出结果如下图:
2. 将 java.util.Date
转换为 java.sql.Date
格式
java.sql.Date sqld = new java.sql.Date(t.getTime());
System.out.println(sqld);
java.sql.Time sqlt = new java.sql.Time(t.getTime());
System.out.println(sqlt);
java.sql.Timestamp sqlts = new java.sql.Timestamp(t.getTime());
System.out.println(sqlts);
打印输出结果如下图:
拓展资料——Java:
Java 是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级 Web 应用开发和移动应用开发。 Java 编程语言的风格十分接近 C++ 语言。继承了 C++ 语言面向对象技术的核心,舍弃了容易引起错误的指针,以引用取代;移除了 C++ 中的运算符重载和多重继承特性,用接口取代;增加垃圾回收器功能。 Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。
java.lang.ClassCastException: java.sql.Timestamp 是什么异常
java.lang.ClassCastException:
这是类型转换错误异常,也就是你在使用 list.get(i)
的时候得到的并不是 Userinfo
类型,而是 Timestamp