Вместо того, чтобы пытаться преобразовать две строки в объект DateTime, я предлагаю вам сделать что-то подобное.
1) Создайте java.util.Calendar
объект:
Calendar cal = Calendar.getInstance();
2) Когда пользователь выбирает дату, нажимая на календарь, помимо печати отформатированной даты в текстовое поле, также установите эту дату в свой объект календаря:
cal.set(Calendar.DATE, <date>);
cal.set(Calendar.MONTH, <month>);
cal.set(Calendar.YEAR, <year>);
3) Когда пользователь выбирает время, нажимая на часы, помимо печати отформатированного времени в текстовое поле, также установите это время в объекте «Календарь»:
cal.set(Calendar.HOUR_OF_DAY, <hour>);
cal.set(Calendar.MINUTE, <minute>);
cal.set(Calendar.SECOND, <second>);
4) Когда вам нужно вставить дату / время в базу данных, просто создайте объект java.util.Timestamp
из своего Календаря:
Timestamp tmstmp = new Timestamp(cal.getTimeInMillis);
5) Теперь предположим, что у вас есть такая таблица:
CREATE TABLE my_table (
n_id INTEGER,
dt_time TIMESTAMP
);
Затем вы можете вставить вновь созданную временную метку следующим образом:
Connection con = DriverManager.getConnection(...);
String sql = "INSERT INTO my_table (n_id, dt_time) VALUES (?, ?)";
PreparedStatememt stmt = con.prepareStatement(sql);
stmt.setInteger(1, 1);
stmt.setTimestamp(2, tmstmp);
stmt.executeUpdate();