关于java.sql.timestamp的信息

发布时间:2022-11-19

本文目录一览:

  1. java.sql.Date,java.sql.Time和java.sql.Timestamp什么区别
  2. java.sql.Timestamp格式错误
  3. java.sql.Timestamp cannot be cast to java.sql.Date求助
  4. 怎样在Java中将日期转化插入到数据库
  5. java如何获取当前时间 年月日 时分秒
  6. 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