From d6bab46ac327a5552dad8b568b8c96e321a2da51 Mon Sep 17 00:00:00 2001 From: rob bygrave Date: Thu, 10 Oct 2019 15:16:12 +1300 Subject: [PATCH] #1838 - Fix for Joda LocalTime timezone handling for MySql --- src/main/java/io/ebeaninternal/server/type/DataBind.java | 7 ++++++- .../java/io/ebeaninternal/server/type/RsetDataReader.java | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/io/ebeaninternal/server/type/DataBind.java b/src/main/java/io/ebeaninternal/server/type/DataBind.java index 8ae786e87..9329f282c 100644 --- a/src/main/java/io/ebeaninternal/server/type/DataBind.java +++ b/src/main/java/io/ebeaninternal/server/type/DataBind.java @@ -159,7 +159,12 @@ public class DataBind { } public void setTime(Time v) throws SQLException { - pstmt.setTime(++pos, v); + Calendar timeZone = dataTimeZone.getTimeZone(); + if (timeZone != null) { + pstmt.setTime(++pos, v, timeZone); + } else { + pstmt.setTime(++pos, v); + } } public void setBoolean(boolean v) throws SQLException { diff --git a/src/main/java/io/ebeaninternal/server/type/RsetDataReader.java b/src/main/java/io/ebeaninternal/server/type/RsetDataReader.java index a30d3ee49..6124495a1 100644 --- a/src/main/java/io/ebeaninternal/server/type/RsetDataReader.java +++ b/src/main/java/io/ebeaninternal/server/type/RsetDataReader.java @@ -175,7 +175,12 @@ public class RsetDataReader implements DataReader { @Override public Time getTime() throws SQLException { - return rset.getTime(pos()); + Calendar cal = dataTimeZone.getTimeZone(); + if (cal != null) { + return rset.getTime(pos(), cal); + } else { + return rset.getTime(pos()); + } } @Override