java.sql.Date just keeps the normalized date, see this from Oracle documentation:
To conform with the definition of SQL DATE, the millisecond values wrapped by a java.sql.Date instance must be 'normalized' by setting the hours, minutes, seconds, and milliseconds to zero in the particular time zone with which the instance is associated.
If you want to use time with the date you have to use java.sql.Timestamp
instead of java.sql.Date