![](/img/trans.png)
[英]Play Framework 2.1 and Ebean: model Finder returns no data
[英]Java play Ebean finder returns wrong data for greater than query
我有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”的数据。 即使其日期小于给定日期,它也会返回data 。 我该如何解决?
您只是想将日期作为字符串处理,不会给您想要的结果。 请尝试将字符串转换为日期,或者也可以比较时间戳(取决于您将其存储在数据库中的方式)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.