Java Mysql数据库中的datetime类型

Java Mysql数据库中的datetime类型,java,mysql,Java,Mysql,我的数据库(MYSQL)中有一个datetime类型的字段(格式为2011-05-18 16:29:31),我不知道这个类型!因为我必须将字符串转换为这种类型。 我找到了java.sql.Date和java.sql.Timestamp,而不是datetime mysqldatetime映射到java.sql.Timestamp——它们都是“日期加时间” 要将字符串转换为日期,请使用以下代码: java.util.Date date = new SimpleDateFormat("yyyy-MM-

我的数据库(MYSQL)中有一个datetime类型的字段(格式为2011-05-18 16:29:31),我不知道这个类型!因为我必须将字符串转换为这种类型。
我找到了java.sql.Date和java.sql.Timestamp,而不是datetime

mysql
datetime
映射到
java.sql.Timestamp
——它们都是“日期加时间”

要将字符串转换为日期,请使用以下代码:

java.util.Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2011-05-18 16:29:31");
java.sql.Timestamp timestamp = new java.sql.Timestamp(date.getTime());

要将日期转换为时间戳,请执行以下操作:

    Date now = new Date();
    Timestamp timestamp = new Timestamp(now.getTime());
有关更多信息,请参阅

    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    Calendar c=Calendar.getInstance();
    try {
        c.setTime(format.parse("2013-12-10 05:15:00"));
    } catch (Exception e) {

    }

    System.out.println(c.get(Calendar.HOUR_OF_DAY)+"h"+c.get(Calendar.MINUTE)+" Date "+c.get(Calendar.DATE));
当使用java.util.Date时出现了一些错误,但当我使用calendar时,它工作得非常好

Date date= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2020-04-21 00:00:00");
java.sql.Timestamp GDDatetimestamp = new java.sql.Timestamp(date.getTime());

步骤1->创建两个模型类一个类包含字符串类型的日期,另一个类包含时间戳的日期步骤2->初始化日期类型的变量,并使用SimpleFormat将字符串日期类型对象转换为日期和格式为“yyy-MM-dd HH:MM:ss”步骤3->initailise java.sql.Timestamp类型变量转换为日期类型变量。getTime()步骤4->将java.sql.Timestamp类型变量设置为包含时间戳模型类对象的类步骤5->发送到dao层时,确保日期参数的jdbctype为日期类型

为什么您认为java.sql.*库和MYSQL应该具有相同名称的数据类型我不知道我假设我已将日期转换为我想要的格式,但作为一个字符串,我想将其转换为java.util.Timestamp,我该怎么做?DateFormat out=新的简化格式(“yyyy-MM-dd HH:MM:ss”);字符串dateString=out.format(date1);请为您的答案添加一些解释,以便其他人可以从中学习。目的是在保存时将日期转换为时间戳格式。我有一个模型类,其中TestDate是字符串类型,我将字符串转换为时间戳。如何将字符串转换为时间戳??所以我有一个对象,它的TestDate是字符串类型,我只需要一个Date类型的变量,所以我通过Date TestDate=new SimpleDateFormat(“yyyy-MM-dd HH:MM:ss”).parse(entity.TestDate())将字符串TestDate转换为日期字段;然后通过java.sql.timestamp Datetimestamp=new java.sql.timestamp(testdate.getTime())将日期转换为时间戳;请在回答中添加所有解释步骤1->制作两个模型类别一个类别包含字符串类型的日期,另一个类别包含时间戳的日期步骤2->初始化日期类型的变量,并使用SimpleFormat将字符串日期类型对象转换为日期和格式为“yyyy-MM-dd HH:MM:ss”步骤3->initailise java.sql.Timestamp类型变量转换为日期类型变量。getTime()步骤4->将java.sql.Timestamp类型变量设置到包含时间戳模型类对象的类中步骤5->发送到dao层时确保日期参数的jdbctype为日期类型请通过编辑将所有解释添加到答案中-不要对此使用注释部分