java取系统时间,存入数据库,要小时分钟秒

struts2 sping hibernate, 数据库mysql
java里取时间后Date date = new Date()
这个date存入数据库了,但是数据库里的字段值是2010/05/22。没有小时分钟秒。
怎么才能把小时分钟秒也存入数据库
我数据库里的字段是date类型的,映射文件.hbm.xml映射的也是date类型,javabean里的属性也是date类型。

问题解决了,java文件不用改,可以用Date date = new Date()来获取时间,mysql里改成Datetime类型,映射文件写成
<property name="userUpdatetime">
<column name="user_updatetime"
sql-type="datetime" not-null="true"/>
</property>

mysql数据库里有自动取得系统时间字段,如果你想手动输入时间的话可以把时间设置为string类型,然后通过获取时间的方法往数据库里存。
import java.util.Calendar;
import java.util.Date;

public class abcd {

public static void main(String[] args) {
Calendar c = Calendar.getInstance();
Date d = c.getTime();
String a = d.toLocaleString();
System.out.println(a);
}
}
一个简单的获取当前系统时间方法。追问

我问得不是要获取当前时间啊

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-11-05
实现思路:首先oracle数据库中的插入数据可以用insert语句,之后即可通过java方式进行插入,如:
String userinfo="insert into userinfo VALUES("+"'"+userD+"',sysdate"+")";
//之后执行插库操作。
备注:sysdate类型就是时分秒都有的,所以不需要进行任何操作即可。
实际在数据库中插入语句如下:
sql:insert into userinfo values('123',sysdate);
第2个回答  2011-05-24
用java.utils.Date,而不是java.sql.Date。另mysql里要用Datetime类型不是Date追问

嗯?用的java.util.Date,mysql里把date类型改为了Datetime类型。谢谢

本回答被提问者和网友采纳
第3个回答  2011-05-24
java.util.Date date = new java.util.Date();
java.text.DateFormat myformat = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowdate = myformat.format(date);

如果你用实体类注解的话,只需要在日期属性的getter()方法前加一句注释,如下:
@Temporal(TemporalType.TIMESTAMP)追问

谢谢你的方法,不知道行不行的通,暂时不想String类型

第4个回答  2011-05-24
Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(new java.util.Date().toLocaleString());
Date sqlDate = new java.sql.Date(date.getTime());
就有时分秒了追问

怎么不行啊,跟直接用Date date = new Date()没区别,数据库里还是存进2010/5/24

相似回答