日期:2014-05-20  浏览次数:20687 次

java String 转换成java.sql.date怎么写啊
因为要调用个存储过程要传入一date型的数据,比如2007-07-15   12:12:23
查了半天也只找到把 "2007-07-15 "这个字符串转换成java.sql.date的办法
java.sql.Date.valueOf(dateStr);
或者先转换成java.util.date型,再用
java.sql.Date(date.getTime())
为什么两种方法就不能加上时间呢



------解决方案--------------------
SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd hh:mm:ss ")
Date date = sdf.parse( "2007-07-15 12:12:23 ")
------解决方案--------------------
注意:java.sql.Date是java.util.Date的子类。


SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd hh:mm:ss ");
try{
Date date = sdf.parse( "2007-07-15 12:12:23 ");
java.sql.Date sqlDate=new java.sql.Date(date.getTime());
String strDate=sdf.format(sqlDate);
System.out.println(strDate);
}catch(Exception e){
e.printStackTrace();
}
------解决方案--------------------
我保存时间数据到数据库的时候都是把字段设置成vchar2类型的
存进去什么样子取出来就什么样子
比较方便

------解决方案--------------------
学习
------解决方案--------------------
SimpleDateFormat dateFm = new SimpleDateFormat( "MM/dd/yy ");
java.util.Date date=null;
date=sdf.parse(strDate);
------解决方案--------------------
String str = "2007-07-15 12:12:23 ";
SimpleDateFormat format = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss ");
java.util.Date d = null;
try
{
d = format.parse(str);
}
catch(Exception e)
{
e.printStackTrace();
}
if (d == null)
return;
java.sql.Date date = new java.sql.Date(d.getTime());
if (date == null)
{
return;
}
//这样就成功了。
System.out.print(date.toLocaleString());//toString()得出的是日期,toLocaleString()得出的是日期和时间,不信你试一下。
------解决方案--------------------
UP
------解决方案--------------------
关注下~刚开始用java
------解决方案--------------------
google一大把~~~
------解决方案--------------------
关注