Конвертирайте JRuby DateTime обект в Java.sql.Timestamp

Използвам JRuby версия 1.7.11. Имам изискване за конвертиране на низ от дата в JRuby в java.sql.Timestamp. Аз съм начинаещ в JRuby, така че имам нужда от помощ и как да направя това. Опитах като по-долу и останах.

require 'date'

datePart = DateTime.parse('2014-04-30')

puts datePart

Не съм сигурен как да конвертирам това в java.sql.Timestamp обект.

някакви мисли?


person techiePS    schedule 18.05.2015    source източник


Отговори (1)


[Малко стар, така че може да е решен досега - моля, уведомете ни вашите открития.]

Вашето извикване на DateTime ви дава обект DateTime.

Обектът java.sql.Timestamp може да бъде конструиран от изрични подробности за година, месец, ден и т.н. или чрез аргумент за милисекунди.

Така че можете да направите или едното

java.sql.Timestamp.new(datePart.year-1900, datePart.month-1,... etc)

or

# convert to Ruby Time, so that the Java conversion gives you a Java Date object
java.sql.Timestamp.new(datePart.to_time.to_java.time) 

Може да има начин да се стигне от обекта DateTime директно до стойността за милисекунди, но не го виждам.

наздраве

person Chris Kimpton    schedule 05.10.2015