С объектами Java Date проще всего было сохранить их как объекты MySql DateTime (в формате UTC). При переходе на Instant этот подход больше не будет работать, поскольку MySQL DateTime не обеспечивает точности хранения наносекунд. Простое их усечение может привести к неожиданным результатам сравнения между вновь созданными объектами Instant и объектами, считанными из базы данных.
не кажутся мне элегантным решением: писать запросы выборки вручную становится сложнее, потому что вам приходится преобразовывать временную метку везде, чтобы сделать ее читаемой, а обработка в Java несколько неуклюжа по сравнению со значениями Instant или даже Long.
Как лучше всего поступить в этом случае? Наверное, это не varchar, верно?
Подробнее здесь:
https://stackoverflow.com/questions/471 ... l-database