Как преобразовать «2012-03-04 00:00:00.0» в дату в формате «дд-мм-гггг ЧЧ:мм:сс» с помощью Java

У меня есть формат даты, который я я получаю из базы данных и имеет тип String. В нем хранится значение, похожее на «2012-03-04 00:00:00.0», но я объявил SimpleDateFormat как «dd-MMM-yyyy HH:mm:ss» который необходим в моем проекте. Теперь, когда я извлекаю некоторые данные вместе с датой из базы данных, я получаю исключение синтаксического анализа с журналом, как показано ниже.

java.text.ParseException: Unparseable date: "2012-03-04 00: 00:00.0" в java.text.DateFormat.parse (неизвестный источник) на com.tcs.tool.iris.aep.selfProfile.dao.AepSelfProfileDaoImpl$1.setValues(AepSelfProfileDaoImpl.ява: 1188) в org.springframework.jdbc.core.JdbcTemplate$4.doInPreparedStatement(JdbcTemplate.java:892) в org.springframework.jdbc.core.JdbcTemplate$4.doInPreparedStatement(JdbcTemplate.java:1) в org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:586) в org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:614) в org.springframework.jdbc.core.JdbcTemplate.batchUpdate(JdbcTemplate.java:883) в com.tcs.tool.iris.aep.selfProfile.dao.AepSelfProfileDaoImpl.insertDataIntoActionItems(AepSelfProfileDaoImpl.java:1174) в com.tcs.tool.iris.aep.selfProfile.service.AepSelfProfileServiceImpl.insertDataIntoActionItems(AepSelfProfileServiceImpl.java:214) в com.tcs.tool.iris.aep.selfProfile.controller.UpdateProgressController.onSubmit(UpdateProgressController.java:48) в org.springframework.web.servlet.mvc.SimpleFormController.processFormSubmission(SimpleFormController.java:272) в org.springframework.web.servlet.mvc.AbstractFormController.handleInvalidSubmit(AbstractFormController.java:675) в org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:275) в org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153) в org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48) в org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790) в org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719) на org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644) в org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560) в javax.servlet.http.HttpServlet.service(HttpServlet.java:637) в javax.servlet.http.HttpServlet.service(HttpServlet.java:717) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) в org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) на org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) в org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) на org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) в org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) в org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) в org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) на org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) в org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) в org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Неизвестный источник)

Пожалуйста, помогите мне понять, что с этим не так. И как преобразовать его в правильный формат.

Фрагмент кода, в котором я получаю исключение, выглядит следующим образом: -

SimpleDateFormat sdf = new SimpleDateFormat(
                                "dd-MMM-yyyy HH:mm:ss");
                        Calendar currenttime = Calendar.getInstance();
                        java.util.Date currentdate = currenttime.getTime();
                        String currentDateInsert = sdf.format(currentdate);
                        CommentNActionItem commentAndAction = commentActionItem
                                .get(i);
                        java.util.Date datefromDb = null;
                        try {
                            @SuppressWarnings("unused")
                            Date dateF=sdf.parse(commentAndAction.getCreatedDate());
                            datefromDb = (java.sql.Date)sdf.parseObject(commentAndAction.getCreatedDate());
                        } catch (Exception e1) {
                            // TODO Auto-generated catch block
                            e1.printStackTrace();

}

7
задан Jåcob 30 July 2018 в 11:02
поделиться