【发布时间】:2013-03-26 09:45:31
【问题描述】:
我正在使用 Apache POI 读取 excel 数据集,并使用 JPA 持久保存到数据库中。这工作正常,除了我需要使用相同的方法将一组日期/时间值正确地输入数据库(使用 apache poi 读取,然后持久保存到数据库中)。目前我正在使用 SimpleDateFormat 这真的没有任何用处。我们需要查询此列,因此我需要在数据库中理想地使用 mySQL 日期。
时间/日期列的数据集示例
21/10/2012 13:20:00
Java
Sheet sheet1 = wb.getSheetAt(0);
String dateTimeFormat = "dd/MM/yyyy HH:mm:ss";
SimpleDateFormat dateFormat = new SimpleDateFormat(dateTimeFormat);
for (int i = 1; i <= sheet1 .getLastRowNum(); i++) {
row = sheet1 .getRow(i);
String sheet1Id = i+"";
double excelDateTime = row.getCell(0).getNumericCellValue();
Date javaDateTime=HSSFDateUtil.getJavaDate(excelDateTime,false);
String dateTime = dateFormat.format(javaDateTime);
Table1 sheet1=new Table1 (sheet1Id ,dateTime)
addToDatabase(table1);
}
对此有任何解决方案以及关于在 mySQL 数据库中创建此列的最佳方式的任何建议(该列目前是 varchar)?
干杯
【问题讨论】:
-
你为什么使用
VARCHAR而不是像DATETIME或TIMESTAMP这样明智的东西? -
到目前为止我一直在使用 varchar - 只是为了让它以字符串格式工作 - 我在过去的几周里刚刚学习 sql,TIMSTAMP 是我应该使用的类型吗?
标签: java mysql date jpa apache-poi