1、如何将java.util.Date转化为java.sql.Date?
转化:
java.sql.Date
sd;
java.util.Date ud;
//initialize the ud such as ud = new
java.util.Date();
sd = new
java.sql.Date(ud.getTime());
2、如果要插入到数据库并且相应的字段为Date类型
那么可以用PreparedStatement.setDate(int
,java.sql.Date)方法
其中的java.sql.Date可以用上面的方法得到
也可以用数据库提供TO_DATE函数
比如
现有 ud
TO_DATE(new SimpleDateFormat().format(ud,"yyyy-MM-dd
HH:mm:ss"),
"YYYY-MM-DD HH24:MI:SS")
注意java中表示格式和数据库提供的格式的不同
一个实际的例子
sql="update tablename set timer=to_date('"+t+"','yyyymmddhh24miss') where ....."
这里的t为变量为类似:20051211131223
3、如何将"yyyy-mm-dd"格式的字符串转换为java.sql.Date
方法1
SimpleDateFormat bartDateFormat =
new
SimpleDateFormat("yyyy-MM-dd");
String dateStringToParse =
"2007-7-12";
try {
java.util.Date date =
bartDateFormat.parse(dateStringToParse);
java.sql.Date sqlDate = new
java.sql.Date(date.getTime());
System.out.println(sqlDate.getTime());
}
catch (Exception
ex) {
System.out.println(ex.getMessage());
}
------------------------------------------------------------
方法2
String strDate = "2002-08-09";
StringTokenizer st
= new StringTokenizer(strDate, "-");
java.sql.Date
date = new
java.sql.Date(Integer.parseInt(st.nextToken()),
Integer.parseInt(st.nextToken()),
Integer.parseInt(st.nextToken()));
但是为什么java.sql.Date类型的值插入到数据库中Date字段中会发生数据截取呢?
java.sql.Date是为了配合SQL DATE而设置的数据类型。“规范化”的java.sql.Date只包含年月日信息,时分秒毫秒都会清零。格式类似:YYYY-MM-DD。当我们调用ResultSet的getDate()方法来获得返回值时,java程序会参照"规范"的java.sql.Date来格式化数据库中的数值。因此,如果数据库中存在的非规范化部分的信息将会被劫取。
Retrieves the of the designated column in the current row of this <code>ResultSet</code> object as a “java.sql.Date” object in the Java programming language.
同理。如果我们把一个java.sql.Date值通过PrepareStatement的setDate方法存入数据库时,java程序会对传入的java.sql.Date规范化,非规范化的部分将会被劫取。然而,我们java.sql.Date一般由java.util.Date转换过来,如:java.sql.Date sqlDate=new java.sql.Date(new java.util.Date().getTime()).
显然,这样转换过来的java.sql.Date往往不是一个规范的java.sql.Date.要保存java.util.Date的精确值,
我们需要利用java.sql.Timestamp.
Calendar calendar=Calendar.getInstance();
//获得当前时间,声明时间变量
int year=calendar.get(Calendar.YEAR);
//得到年
int month=calendar.get(Calendar.MONTH);
//得到月,但是,月份要加上1
month=month+1;
int date=calendar.get(Calendar.DATE);
//获得日期
String today=""+year+"-"+month+"-"+date+"";
发表评论
-
深入分析 Java 中的中文编码问题
2011-11-16 07:45 0几种常见的编码格式 ... -
Java 编码
2011-11-16 07:44 0http://zhidao.baidu.com/quest ... -
java字符编码原理解析
2011-11-16 07:43 0可以理解为计算机没 ... -
HttpClient
2011-11-03 11:07 836From http://www.blogjava.net/Al ... -
ECLIPSE ANT OutOfMemoryError
2011-08-04 17:23 1018ANT BUILD MEMORY ERROR: [cl ... -
JDBC BATCH
2011-07-05 14:58 0PreparedStatement ps = conn.pre ... -
OUT OF MEMORY WHEN BUILD
2011-02-22 17:47 01, ANT BUILD: In Eclipse op ... -
spring weblogic jndi
2011-02-16 09:18 1844weblogic:weblogic8.1 数据库:MySql ... -
log4j 邮件
2011-01-24 15:54 0<!-- 设置上下文参数 --> ... -
tomcat weblogic
2010-12-01 11:25 1868EJB 层基本搞定,以前测试 EJB 也都是写一个 appli ... -
ant weblogic “local class incompatible: stream classdesc serialVersionUI”
2010-11-29 12:41 2239weblogic.management.Management ... -
Debugging with the Maven Jetty Plugin in Eclipse
2010-11-15 17:42 1043debug: http://docs.codehaus.or ... -
maven tomcat eclipse debug
2010-11-15 17:36 1956from: http://bandaidprogrammin ... -
maven app tomcat 部署
2010-11-11 15:56 1312修改pom.xml,添加如下配置: <build ... -
Maven Cargo Tomcat 部署
2010-11-11 15:49 1774pom.xml中<build>下添加如下代码: ... -
java中读取配置文件各种方法
2010-09-07 12:31 01。使用Java.util.Properties类的load( ... -
ThreadGroup
2010-05-25 08:47 0在Java中每个线程都属于某个线程组(ThreadGroup) ... -
java Excel 导出
2010-03-28 20:06 0public void createExcel(OutputS ... -
java小数保留两位小数
2009-11-19 16:49 2341方式一: 四舍五入 double f = ... -
java中实现xml schema 验证文件
2009-11-16 20:05 3884XML 是可扩展标记语言,也就是说其中的标记我们可以按照我们 ...
相关推荐
java.util.Date utilDate = new java.util.Date(sqlDate.getTime()); // java.util.Date 转换为 java.sql.Date java.util.Date utilDate = new java.util.Date(); java.sql.Date sqlDate = new java.sql.Date...
java.util.Date utilDate = new java.util.Date(sqlDate.getTime()); ``` #### 三、字符串转换为日期时间格式 将字符串转换为日期时间格式通常需要用到`SimpleDateFormat`类。下面分别介绍两种常见的字符串到日期...
- `java.sql.Date` 是 `java.util.Date` 的子类,可以通过`new java.sql.Date(java.util.Date.getTime())`进行转换。 **转换方法**: - **从 `java.util.Date` 转换为 `java.sql.Date`**: ```java java.util....
java.util.Date utilDate = new java.util.Date(sqlDate.getTime()); 二、字符串转换为日期时间格式 可以使用SimpleDateFormat将字符串转换为日期时间格式: String dateStringToParse = "2007-7-12"; ...
Java编程语言提供了两个重要的日期处理类,分别是`java.util.Date`和`java.sql.Date`,它们在处理日期和时间上有着不同的特性和用途。 `java.util.Date`是更通用的日期时间类,它包含了日期和时间的信息,可以精确...
java_sql_Date与java_util_Date转换
在Java编程中,日期处理是常见的任务之一,`java.util.Date` 和 `java.sql.Date` 都是用来表示日期的类,但它们之间存在显著的区别和用法差异。 首先,`java.util.Date` 是 Java 核心库 `java.util` 包中的类,它...
类型转换 ( Java.util.date与java.sql.date区别和转换
此java文件包括常用的日期类型之间的转换,包括java.util.Date、java.sql.Date、String之间的任意类型、格式转换......
在Java中,String不能直接转化成java.sql.Date,需要先将String转化成java.util.Date,然后再将java.util.Date转化成java.sql.Date。下面是一个示例代码: ```java public java.sql.Date strToDate(String strDate)...
System.out.println(java.sql.Date.valueOf(str));`,但是输出结果可能会出现奇怪的结果。 三、Date 转化成 String 可以使用 `SimpleDateFormat` 类将 `Date` 转换成 `String`:`SimpleDateFormat sdf = new ...
Date sqlDate = new java.sql.Date(format.parse(dateStr).getTime()); // 将字符串转换为sql.Date System.out.println("Util Date: " + utilDate); System.out.println("SQL Date: " + sqlDate); } catch ...
在 Android 中,使用 java.util.Date 类来表示日期类型数据,而 java.sql.Date 类则是为了配合 SQL DATE 而设置的数据类型。java.sql.Date 类只包含年月日信息,因为数据库中存在的非规范化部分的信息,如时分秒毫秒...
java中util.date和sql.date的类型转换问题.帮助大家很完善的了解关于java日期类型和数据库日期类型转换的问题,很值得拥有.
java.util.Date utilDate = new java.util.Date(sqlDate.getTime()); ``` 在处理日期格式化时,`SimpleDateFormat` 类用于将日期对象转换为字符串或将字符串解析为日期对象。例如: ```java SimpleDateFormat f ...
本文将深入探讨`java.util.Date`、`java.util.Calendar`、`java.sql.Date`、`java.sql.Time`和`java.sql.Timestamp`这五种日期时间类之间的区别和联系。 #### 1. `java.util.Date` `java.util.Date`类是Java中表示...