java.util.Date型に@Temporalを付与しなければいけないとJPAの仕様で決められているためです。(Hibernateはなくても動いていますが...) こんな感じになります。
@Temporal(TemporalType.DATE) private Date hiredate;