JPA エンティティの 1 つに次のフィールド定義があります。
@Column(nullable = false, name = "start_time",
columnDefinition= "TIMESTAMP WITH TIME ZONE")
@Temporal(javax.persistence.TemporalType.TIMESTAMP)
private Date startTime = new Date();
@Column(nullable = true, name = "end_time",
columnDefinition= "TIMESTAMP WITH TIME ZONE")
@Temporal(javax.persistence.TemporalType.TIMESTAMP)
private Date endTime = null;
データベースは PostgreSQL であり、タイムゾーンなしでタイムスタンプを使用することはできません。タイムゾーンに関して、挿入と更新は順調に進んでいます。いくつかのテスト データに対して SELECT JPQL クエリを実行しようとし、フィルター パラメーターが Date オブジェクトであると、問題が発生します (少なくとも私はそう思います)。OpenJPA が生成するクエリには、パラメーターにタイムゾーンが含まれていません。タイムゾーン列を使用したJPAとタイムスタンプに関するガイダンスを誰か教えてもらえますか?