Для такого преобразования, казалось бы, можно воспользоваться приведением LocalTime к миллисекундам. Вполне возможно, что будет работать. Вообще, основная проблема здесь может возникнуть с часовыми поясами. Если использовать конструктор java.sql.Time(long), то он принимает количество миллисекунд от 1 января 1970 года по GMT, но непонятно, как их получить из LocalTime. Я обычно делаю через промежуточную конвертацию в DateTime:
1 2 3 4 |
java.sql.Time localTimeToSqlTime(org.joda.time.LocalTime localTime) { if (localTime == null) return null; else return new java.sql.Time(new org.joda.time.DateTime(1970, 1, 1, localTime.getHourOfDay(), localTime.getMinuteOfHour(), localTime.getSecondOfMinute()).getMillis()); } |