java.sql.date转化的问题
想向Oracle数据库中插入当前时间(包括日期和时间,即yyyy-MM-ddhh:mm:ss),数据库中的类型为date类型,但是在用PrepareStatement插入...
想向Oracle数据库中插入当前时间(包括日期和时间,即yyyy-MM-dd hh:mm:ss),数据库中的类型为date类型,但是在用PrepareStatement插入的时候,要求是java.sql.date类型的,现在想如何得到当前时间然后插入到数据库,如果直接转化的话,数据库中保存的格式就成了yyyy-MM-dd ,请高手指点,如何保存完整的类型,如果不使用直接在插入语句中使用systdate的话,还有没有别的方法,比如获得当前时间,然后转化
package com.bao.test;
import java.util.Date;
public class Test {
public static void main(String args[]){
Date date = new Date();
java.sql.Date date2 = new java.sql.Date(date.getTime());
System.out.println(date);
System.out.println(date2.getTime());
}
}
再请教一点,在设计数据库的时候,类型是设成date的,只是在PrepareStatement的时候使用这个是吧?
也就是pstmt.setTimestamp(7, new java.sql.Timestamp(new Date().getTime())),我的理解对不 展开
package com.bao.test;
import java.util.Date;
public class Test {
public static void main(String args[]){
Date date = new Date();
java.sql.Date date2 = new java.sql.Date(date.getTime());
System.out.println(date);
System.out.println(date2.getTime());
}
}
再请教一点,在设计数据库的时候,类型是设成date的,只是在PrepareStatement的时候使用这个是吧?
也就是pstmt.setTimestamp(7, new java.sql.Timestamp(new Date().getTime())),我的理解对不 展开
5个回答
展开全部
你理解的是对的。
数据库中设计的是date类型,java中分别有3种类来对应不同的形式,java.sql.Date,java.sql.Time,java.sql.Timestamp
数据库中设计的是date类型,java中分别有3种类来对应不同的形式,java.sql.Date,java.sql.Time,java.sql.Timestamp
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
获取界面输入的时间 并且设置格式,然后转换。
给你方法 。Timestamp 类型 是Date 子类
/**
* String类型的时间转换成Timestamp类型
* @param String strdate
* @return Timestamp datetime
* @throws ParseException
*
*/
public static Timestamp string2Time(String dateString)
throws java.text.ParseException {
DateFormat dateFormat;
dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINESE);// 设定格式
dateFormat.setLenient(false);
if(!dateString.equals("")){
Date timeDate = dateFormat.parse(dateString);// util类型
Timestamp dateTime = new Timestamp(timeDate.getTime());// Timestamp类型,timeDate.getTime()返回一个long型
return dateTime;
}else {
return null;
}
}
给你方法 。Timestamp 类型 是Date 子类
/**
* String类型的时间转换成Timestamp类型
* @param String strdate
* @return Timestamp datetime
* @throws ParseException
*
*/
public static Timestamp string2Time(String dateString)
throws java.text.ParseException {
DateFormat dateFormat;
dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINESE);// 设定格式
dateFormat.setLenient(false);
if(!dateString.equals("")){
Date timeDate = dateFormat.parse(dateString);// util类型
Timestamp dateTime = new Timestamp(timeDate.getTime());// Timestamp类型,timeDate.getTime()返回一个long型
return dateTime;
}else {
return null;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public String getSysTimeNow() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-M-d HH:mm:ss");
Date date = new Date();
return sdf.format(date);
}
这个就是返回当前系统时间,String类型,就可以直接插入数据库,insert...(str(日期),...);
数据库插入的都可以是字符串
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-M-d HH:mm:ss");
Date date = new Date();
return sdf.format(date);
}
这个就是返回当前系统时间,String类型,就可以直接插入数据库,insert...(str(日期),...);
数据库插入的都可以是字符串
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我的项目里使用两种保存日期的格式:第一个是用Timestamp,见各楼上;第二个是存成毫秒数,每次取出存入时转换下。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询