### Question:
SQLTimestampAccessor implements PropertyAccessor<Timestamp> { @Override public Timestamp fromString(Class targetClass, String s) { if (s == null) { return null; } if (StringUtils.isNumeric(s)) { return new Timestamp(Long.parseLong(s)); } Timestamp t = Timestamp.valueOf(s); return t; }  @Override Timestamp fromBytes(Class targetClass, byte[] b); @Override byte[] toBytes(Object object); @Override String toString(Object object); @Override Timestamp fromString(Class targetClass, String s); @Override Timestamp getCopy(Object object); Timestamp getInstance(Class<?> clazz); static Logger log; }### Answer:
@Test public void testFromString() { Assert.assertNull(accessor.fromString(Timestamp.class, null)); long currTime = System.currentTimeMillis(); Timestamp t = accessor.fromString(Timestamp.class, currTime + ""); Assert.assertEquals(currTime, t.getTime()); String s = t.toString(); Timestamp t2 = accessor.fromString(Timestamp.class, s); Assert.assertEquals(currTime, t2.getTime()); }