java - hibernate -以我想要的格式在mysql数据库中检索和保存日期

标签 java mysql hibernate date servlets

我正在以这种方式使用 hibernate 将数据存储在 MySQL 数据库中。

@Column(name="CREATION_DATE")
private Date creation_date;

我使用 dd-mm-yyyy 格式输入日期:

    String str_date = request.getParameter("document_date");
    DateFormat df = new SimpleDateFormat("dd-mm-yyyy");
    Date date = null;
    try {
        date = df.parse(str_date);
    } catch (ParseException e1) {
        System.out.println("Exception occurred in parsing date : "+e1);
    }

但是当日期进入数据库时​​,它的格式完全不同:例如。如果输入的日期是 22/2/2015,那么存储的日期是 0022-01-03。而且我也无法阻止时间被保存在数据库中,即使我使用了 TemporalType.DATE。请帮忙,因为这占用了我太多时间!

最佳答案

来自 Mysql 文档:- Date format

The DATE type is used for values with a date part but no time part. MySQL retrieves and displays DATE values in 'YYYY-MM-DD' format. The supported range is '1000-01-01' to '9999-12-31'

此外,如果您还想在数据库中存储时间,请像下面这样定义您的 creation_date 变量。您将不得不使用 TIMESTAMP

@Column(name="CREATION_DATE")
@Temporal(TemporalType.TIMESTAMP)
private Date creation_date;

关于java - hibernate -以我想要的格式在mysql数据库中检索和保存日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28657397/

相关文章:

java - 在 Fragment 中带有图像和文本的 Android ListView

java - 在 Android 中每 24 小时自动实例化 Activity 中的一个函数

mysql - 如何检查一个字符串是否包含列MySQL中的任何字符串

php - IMAP 和 PHP - 从已发送和收件箱文件夹中获取所有电子邮件

java - 如何从映射的父类(super class)继承@Id?

java - 使用 Pax(包括 Jetty)在 Apache Karaf 中启用/禁用允许的密码套件

java - 基于实体名称及其主键的通用数据获取 API

MySQL #2006 服务器已消失/配置中定义的控制用户连接失败。 PHP 7.0.4 和 MySQL 5.7.12

java - spring中sql查询失败如何回滚事务

java - Java 基类的 Hibernate 注解