2013-05-20 47 views
1

为了我的学习目的,我创建了一个简单的应用程序,使用Sqlite DB以及HibernateStruts 2。在这我试图插入一行到表 - 用户(ID,mydate)。插入发生时没有任何错误,但是当我从数据库中检索数据并尝试将其显示在屏幕上时,它会显示不正确的数据。我不知道我在做什么错。日期列的值被检索为1/1/70 5:30:02 AM.007。以下是可能与此相关的代码。使用休眠日期插入到sqlite数据库

User.java

public class User implements Serializable { 
    private Integer id; 
    private Date mydate; 
    //getters and setters 
} 

user.hbm.xml

<hibernate-mapping> 
<class name="com.User" table="user"> 
    <id name="id" type="java.lang.Integer"> 
     <column name="id" /> 
     <generator class="native" /> 
    </id> 
    <property name="mydate" type="java.util.Date"> 
     <column name="mydate" /> 
    </property> 
</class> 
</hibernate-mapping> 

插入语句

insert into user(id,mydate) values (2,DATE('2013-04-03')); 

查询方法

@Override 
public User queryByUserId(Integer id) { 
    return getHibernateTemplate().get(User.class, id); 
} 

回答

0

我认为,我来晚了,但我会回答你的问题:

日期必须具备以下格式:

'2000-01-01 00:00:00' 

YYYY-MM-DD HH :mm:ss

和''mydate'的type必须是"java.sql.Date"而不是o f "java.util.Date"