【发布时间】:2017-10-05 07:22:36
【问题描述】:
如何在具有时间戳类型的列上使用 Spring Data JPA 从表中检索数据。数据库是 mySQL
列定义
last_update timestamp
领域对象
public class Film implements Serializable {
@Column(name="last_update")
private Timestamp lastUpdate;
public Timestamp getLastUpdate() {
return this.lastUpdate;
}
public void setLastUpdate(Timestamp lastUpdate) {
this.lastUpdate = lastUpdate;
}
}
Spring Data JPA 代码
@Repository
public interface FilmRepository extends CrudRepository<Film, Integer>
{
Film findByLastUpdate(Date date);
}
服务类
@Override
public Film readFilmbyDate(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Film film=null;
try {
film= filmRepository.findByLastUpdate(sdf.parse(sdf.format(new Date())));
} catch (ParseException e) {
e.printStackTrace();
}
return film;
}
这总是返回null,因为数据库列有一个timestamp(2017-05-07 06:45:19),基本上我想返回所有最后更新日期为今天/当前日期的记录。
【问题讨论】:
标签: mysql spring-boot spring-data spring-data-jpa