`
NealCai
  • 浏览: 144674 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

转 java.util.Date与java.sql.Date相互转换

    博客分类:
  • java
阅读更多
在ResultSet中我们经常使用的setDate或getDate的数据类型是java.sql.Date,而在平时java程序中我们一般习惯使用 java.util.Date。因此在DAO层我们经常会碰到这俩种数据类型的相互转换,经过了一个下午的折腾,鄙人对两者的转换方法做出了小小总结,希望大家不吝指教。
两者的关系

java.lang.Object
    |
    +---java.util.Date
            |
            +----java.sql.Date

从这个图中我们可以知道java.sql.Date是从java.util.Date继承过来的。

相互转换
1. 使用getTime()函数
这两个类都提供了getTime()函数,用于返回对应的毫秒数(long类型)。利用这个函数可以实现转换:
    java.util.Date utilDate = new java.util.Date(sqlDate.getTime());   // sql -> util
    java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());   // util -> sql

2. 使用SimpleDateFormat类实现转换
SimpleDateFormat 是一个以国别敏感的方式格式化和分析数据的具体类。 它允许格式化 (date -> text)、语法分析 (text -> date)和标准化。
SimpleDateFormat dateFormat = new SimpleDateFormate("yyyy-MM-dd HH:mm:ss");
java.util.Date utilDate = dateFormat.parse(sqlDate.toString());

3. 直接转换
由于java.sql.Date是从java.util.Date中继承过来的,所以可以直接用:
utilDate = sqlDate;

4. 另类获得日期的方法:
SimpleDateFormat sy=new SimpleDateFormat("yyyy");
SimpleDateFormat sm=new SimpleDateFormat("MM");
SimpleDateFormat sd=new SimpleDateFormat("dd");
String syear=sy.format(date);
String smon=sm.format(date);
String sday=sd.format(date);

ps: java.util.Date类中的getYear()要加上1900才可得到实际值,getMonth()则要加上1
分享到:
评论

相关推荐

    java.util.Date与java.sql.Date相互转换

    ### Java.util.Date与Java.sql.Date相互转换 #### 知识点概述 在Java开发中,经常需要处理日期和时间相关的操作。Java标准库提供了两个重要的日期类:`java.util.Date` 和 `java.sql.Date`。虽然它们名字相似,但...

    java.util.Date与java.sql.Date互转及字符串转换为日期时间格式.docx

    ### Java.util.Date与Java.sql.Date互转及字符串转换为日期时间格式 #### 一、Java.util.Date与Java.sql.Date的基本概念 在Java编程语言中,处理日期和时间时经常使用到`java.util.Date`和`java.sql.Date`这两个类...

    java.sql.date与java.util.date.pdf

    在实际应用中,我们通常需要将Java.util.Date转换为Java.sql.Date,以便将日期和时间插入到数据库中。下面是一些常用的转换方法: 1. 将Java.util.Date转换为Java.sql.Date Java.sql.Date sd; Java.util.Date ud; ...

    java.util.Date与java.sql.Date互转及字符串转换为日期时间格式[文].pdf

    Java.util.Date与java.sql.Date的互转及字符串转换为日期时间格式 java.util.Date和java.sql.Date是Java中两个常用的日期时间类,分别属于不同的包。java.util.Date是Java标准库中的日期时间类,而java.sql.Date是...

    java_sql_Date与java_util_Date转换

    java_sql_Date与java_util_Date转换

    java.sql.与java.util

    要从`java.util.Date`转换为`java.sql.Date`,可以调用`java.util.Date`的`getTime()`方法获取时间戳,然后用这个时间戳初始化`java.sql.Date`。相反,从`java.sql.Date`转换回`java.util.Date`,只需传入`java.sql....

    Java.util.date与java.sql.date区别和转换

    类型转换 ( Java.util.date与java.sql.date区别和转换

    java.util.Date、java.sql.Date与String三者之间的转换

    此java文件包括常用的日期类型之间的转换,包括java.util.Date、java.sql.Date、String之间的任意类型、格式转换......

    java.util.Date与java.sql.Date的区别

    在Java编程中,日期处理是常见的任务之一,`java.util.Date` 和 `java.sql.Date` 都是用来表示日期的类,但它们之间存在显著的区别和用法差异。 首先,`java.util.Date` 是 Java 核心库 `java.util` 包中的类,它...

    util包里的Date类转换为sql包里的Date

    // 将util.Date转换为sql.Date Date sqlDate = new java.sql.Date(timeInMillis); System.out.println("Util Date: " + utilDate); System.out.println("SQL Date: " + sqlDate); } } ``` #### 方法二:通过...

    JAVA String转化成java.sql.date和java.sql.time方法示例

    与String转化成java.sql.Date类似,String转化成java.sql.Time也需要先将String转化成java.util.Date,然后再将java.util.Date转化成java.sql.Time。下面是一个示例代码: ```java public java.sql.Time strToTime...

    java完美按格式化字符串String转sql.date

    这里的重点在于确保转换的准确性和兼容性,因为`java.sql.Date`与`java.util.Date`是不同的,前者主要用于与数据库交互。 #### 二、解决方案 为了实现这个需求,我们可以编写一个方法`stringToSqlDate`,该方法...

    Javautildate与javasqldate区别和转换[文].pdf

    java.util.Date utilDate = new java.util.Date(sqlDate.getTime()); ``` 在处理日期格式化时,`SimpleDateFormat` 类用于将日期对象转换为字符串或将字符串解析为日期对象。例如: ```java SimpleDateFormat f ...

    Android的SQLite中DateTime类型数据的存取问题

    首先,使用 SimpleDateFormat 需要将字符串类型的日期数据解析成 java.util.Date 类型,然后使用 java.sql.Timestamp 将其转换成 Timestamp 对象。最后,可以直接将 Timestamp 对象插入到 SQLite 数据库中。 取出 ...

    util.date 和 sql.date 相关问题汇总

    java中util.date和sql.date的类型转换问题.帮助大家很完善的了解关于java日期类型和数据库日期类型转换的问题,很值得拥有.

    utilDate和sqlDate区别、转换及应用

    java.util.Date utilDate = new java.util.Date(sqlDate.getTime()); ``` 2. 反过来,从`java.util.Date`到`java.sql.Date`的转换也是类似的: ```java java.util.Date utilDate = ...; java.sql.Date sqlDate...

Global site tag (gtag.js) - Google Analytics