Как получить текущее время в Scala в формате timestamp / datetime, чтобы его можно было сохранить в таблице PG - PullRequest
0 голосов
/ 19 марта 2019

Я написал следующую функцию в Scala, которая работает:

import java.text.SimpleDateFormat
import java.util.{Calendar, Date}
import java.util.{TimeZone, Date}


val curr_timeFmt = "YYYY_MM_dd_HH_mm_ss"

def curr_time(): String = {
    val date = new Date
    val currTS = new SimpleDateFormat(curr_timeFmt)
    currTS.setTimeZone(TimeZone.getTimeZone("EST"));
    currTS.format(date)
  }

Я хотел бы сохранить возвращаемое значение из этой функции в качестве метки времени в столбце PGn типа timestamp.

* 1005Кроме того, во время исследования в Интернете я слышал, что классы Java Calendar и Date не являются поточно-ориентированными и изменяемыми.Правда ли это, если да, то как я могу использовать новое время joda в Java 8?

Любая помощь будет принята с благодарностью, так как я некоторое время искал онлайн и пробовал несколько вещей, но ничего не помогло.

Thx

1 Ответ

4 голосов
/ 19 марта 2019

Чтобы получить текущее время в восточном часовом поясе США, в этом формате, используя Java 8 Time API :

val fmt = DateTimeFormatter.ofPattern("uuuu_MM_dd_HH_mm_ss")
val time = LocalDateTime.now(ZoneId.of("America/New_York")).format(fmt)

Значение печати time показывает, например,

2019_03_18_21_32_22
...