【发布时间】:2017-09-15 14:48:22
【问题描述】:
我有 2 个名为 Ride 和 Ride Location 的表。
Ride.java
@Entity
public class Ride extends Model {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long rideId;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss z")
private Date rideDate;
@OneToMany(mappedBy = "ride", cascade = CascadeType.ALL)
private List<RideLocation> rideLocations;
}
RideLocation.java
@Entity
public class RideLocation extends Model {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long rideLocationId;
private String locationName;
private float lat;
private float lon;
@JsonBackReference
@ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
private Ride ride;
}
我正在尝试获取 rideDate 大于或等于给定日期且“locationName”等于给定位置的所有游乐设施。
List<RideLocation> list = Ebean.find(RideLocation.class).where().ge("ride.rideDate", "2017-09-13").and().like("locationName", "San Jose").findList();
这将返回等于 `locationName' 的数据。 即使日期小于给定日期,也会返回数据。我该如何解决这个问题?
【问题讨论】:
-
RideLocation的数据库架构是什么样的?
标签: java playframework-2.0 ebean