diff --git a/src/org/redkale/convert/ConvertFactory.java b/src/org/redkale/convert/ConvertFactory.java index b8a02d78d..ea0c5d5a3 100644 --- a/src/org/redkale/convert/ConvertFactory.java +++ b/src/org/redkale/convert/ConvertFactory.java @@ -133,6 +133,54 @@ public abstract class ConvertFactory { } }); + try { + Class sqldateClass = Class.forName("java.sql.Date"); + this.register(sqldateClass, new SimpledCoder() { + + @Override + public void convertTo(W out, java.sql.Date value) { + out.writeLong(value == null ? 0L : value.getTime()); + } + + @Override + public java.sql.Date convertFrom(R in) { + long t = in.readLong(); + return t == 0 ? null : new java.sql.Date(t); + } + + }); + Class sqltimeClass = Class.forName("java.sql.Time"); + this.register(sqltimeClass, new SimpledCoder() { + + @Override + public void convertTo(W out, java.sql.Time value) { + out.writeLong(value == null ? 0L : value.getTime()); + } + + @Override + public java.sql.Time convertFrom(R in) { + long t = in.readLong(); + return t == 0 ? null : new java.sql.Time(t); + } + + }); + Class timestampClass = Class.forName("java.sql.Timestamp"); + this.register(timestampClass, new SimpledCoder() { + + @Override + public void convertTo(W out, java.sql.Timestamp value) { + out.writeLong(value == null ? 0L : value.getTime()); + } + + @Override + public java.sql.Timestamp convertFrom(R in) { + long t = in.readLong(); + return t == 0 ? null : new java.sql.Timestamp(t); + } + + }); + } catch (Throwable t) { + } } }