
java.sql.Date ds=new java.sql.Date(new java.util.Date().getTime())
但只输出了年月日,我想输出这样的格式的:yyyy-MM-dd hh:mm:ss
要怎样写呢?
还有,怎样让数据库中显示的日期是:yyyy-MM-dd hh:mm:ss格式呢?我通过上面的转换后写入数据库,在数据库中显示的结果为是:yyyy-MM-dd 00:00:00,是mysql数据库,字段类型为:datetime
我要的是这样的啊:2008-12-27 18:28:36
date.getHours()的方岁前法已经过时,编译器会发出警告,不建议这么做。
java.sql.Date没有直接显示hh:mm:ss的方法凯雀搏(除过时方法);
有一种比较麻烦的方法可以实现你的要求。
java.sql.Date b = new java.sql.Date(new java.util.Date().getTime());
java.util.Date c = new java.util.Date(b.getTime());
System.out.println(b+" "+c.toString().split(" ")[3]);
希望盯祥对你有帮助
Java里面所有的时铅漏间都是按毫秒算的
都有个getTime()得到从以下那个时间到现在的毫辩激唤秒数
在中国都是从1970/01/01 08:00:00.000开始算
你说携凯的格式输出的话可以用DateFormat
DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date = format.format(new java.util.Date());
System.out.println(date);
不要.getTime()吧,可以直和旅败接通过唤颤类型转换或者直接创建java.sql.Date对象,镇运楼主试一下。
一楼的方法不推荐使用
你使用什么往困吵芦数据库中插值呢
jdbc还是hibernate
jdbc的话你的sql语句中插入datetime 的格式就因该是yyyy-MM-dd hh:mm:ss。
你还得不ava.sql.Date用SimpleDateFormat转成yyyy-MM-dd hh:mm:ss格碰孙式的string再付给sql的datetime字段。
hibernate的话直接set po类就是汪带最精确地时间了
Date date=new Date();
int tt=date.getHours();
其他的类似
修改,上面的这种做法不推余余没荐使用
package test;
import java.util.*;
public class Tst {
public static void main(String[] args) {
GregorianCalendar gc=new GregorianCalendar();
String now=gc.get(Calendar.YEAR)+"-"+(gc.get(Calendar.MONTH)+1)+"-"+gc.get(Calendar.DATE)+" "
+gc.get(Calendar.HOUR)+":"竖纳+gc.get(Calendar.MINUTE)+":"+gc.get(Calendar.SECOND);
System.out.println(now);
}
}
建议楼主采用拼写字符串的形式,就毁改是向数据库插入一条字符串。