【发布时间】:2017-09-06 10:33:37
【问题描述】:
我想使用 LocalDateTime.parse() 方法解析日期,日期格式为 yyyy-MM-dd HH:mm:ss,但我实际得到的是格式为 yyyy-MM-ddTHH:mm:ss 的日期.我不需要那个“T”。请看下面的代码
LocalDateTime.parse("2016-10-31 23:59:59", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
我得到的结果是 2016-10-31T23:59:59。看到那个'T'。 'T' 导致问题,因此我无法将其保存到我的数据库中。我尝试将值保留在datetime 类型的列中;我收到错误消息 - org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar。
查看有效的值
VALUES('US','101','test','firstname','middleName','preferedName','lastName',
'1989-01-01','M',1,'11221123','test@test.com','address1','address2','Bloomingdale','IL','US','689850',
1,1,'11111','2016-12-31 23:59:59')
(最后一个值中没有T)
这不起作用:
VALUES('US','101','test','firstname','middleName','preferedName','lastName',
'1989-01-01','M',1,'11221123','test@test.com','address1','address2','Bloomingdale','IL','US','689850',
1,1,'11111','2016-12-31T23:59:59')
(最后一个值为T)。
【问题讨论】:
-
你看到的是日期的内部表示。因为
Date没有格式 -
列的类型是什么,如何尝试存储日期,错误信息是什么?
-
日期/时间对象 DO NOT 有格式化的概念,它们是从给定时间点开始的毫秒数的容器。这就是为什么有日期/时间格式化程序 - 我建议看看Parsing and Formatting trail
-
列的类型是 datetime ,我收到错误 - org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback;糟糕的 SQL 语法
-
所以显示相关代码。它与日期无关
标签: java database datetime spring-jdbc