2016-08-02 1 views
0

다음은 제 문자열입니다. 2016-07-29T17 : 15 : 46.838Z
이것을 MySQL DATETIME (6) 열에 삽입하고 싶습니다. 여기Joda 날짜 시간 문자열을 Java_Sql.TimeStamp로 변환합니다.


난을 java.sql.Timestamp

private java.sql.Timestamp convertToJavaSqlTimeStamp(String p_dateTimeString) { 
DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy/MM/dd HH:mm:ss:SSS"); 
java.sql.Timestamp _timeStamp = new java.sql.Timestamp(formatter.parseDateTime(p_dateTimeString).getMillis()); 
return _timeStamp; 
} 

로 문자열을 변환하기 위해 만든 방법이다.
.
.

SQL 삽입 논리 ...

PreparedStatement preparedStatement ; 
preparedStatement = _mysqlConn.prepareStatement("INSERT INTO myTable (my_date_time) VALUES (?)"); 
preparedStatement.setTimestamp(1, convertJodaDateTimeStringToJavaSqlTimeStamp("2016-07-29T17:15:46.838Z")); 
preparedStatement.executeUpdate(); 

오류 메시지 : 잘못된 형식 : "2016-07-29T17 : 15 : 46.432Z"는 "46.432Z : 15 -07-29T17"에, 부정한다

+0

메서드를 전달하는 형식이 예상 한 형식과 다른 것으로 보입니다. 나는 특히 자바에 익숙하지 않지만 이런식이 더 적절하다고 생각한다.'DateTimeFormat.forPattern ("yyyy-MM-ddTHH : mm : ss.SSSZ")'_ 및 Z.) _ – Uueerdo

답변

0

우에 게도의 덧글을 외면합니다. 다음은 트릭을했습니다

DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss.SSSZ") 

감사합니다.

관련 문제