我有以下SQL查詢:庫界面污物,日期比較
select * from wash_history w where w.wash_id in
(select wash.id from wash where wash.car_wash_id = 17)
and w.time between '2017-07-13' and '2017-07-22'
我想創建內部擴展CrudRepository
接口此查詢。方法是
Page<WashHistory> findWashHistoryByTimeBetweenOrderByTimeDesc(Date dateFrom,
Date dateTo,
Pageable pageable);
但是這個方法總是返回一個空的列表,我想是因爲Java日期和SQL TimeStamp?如果你想要更多的細節,我可以添加他們的問題。我的類:
public class WashHistory implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "id")
private Integer id;
// @Max(value=?) @Min(value=?)//if you know range of your decimal fields consider using these annotations to enforce field validation
@Column(name = "wash_price")
private Double washPrice;
@Size(max = 2147483647)
@Column(name = "car_wash_name")
private String carWashName;
@Basic(optional = false)
@NotNull
@Column(name = "time")
@Temporal(TemporalType.TIMESTAMP)
private Date time;
@Size(max = 2147483647)
@Column(name = "status")
private String status;
@Column(name = "bonuses")
private Integer bonuses=0;
@JoinColumn(name = "wash_id", referencedColumnName = "id")
@ManyToOne(fetch = FetchType.LAZY)
private Wash washId;}
和洗滌類
public class Wash implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "id")
private Integer id;
@Size(max = 2147483647)
@Column(name = "status")
private String status;
@Column(name = "using_bonuses")
private Boolean usingBonuses=false;
@Basic(optional = false)
@NotNull
@Column(name = "last_status_time")
@Temporal(TemporalType.TIMESTAMP)
private Date lastStatusTime;
@OneToMany(mappedBy = "washId", fetch = FetchType.LAZY)
private Set<WashHistory> washHistorySet;
@OneToOne(mappedBy = "washId", fetch = FetchType.LAZY)
private WashComment washCommentSet;
@JoinColumn(name = "car_wash_id", referencedColumnName = "id")
@ManyToOne(fetch = FetchType.LAZY)
private CarWash carWashId;}
我pageble
public class LimitAndOffsetPageable extends PageRequest {
private int page;
private int size;
public LimitAndOffsetPageable(int page, int size){
super(page,size);
this.page=page;
this.size=size;
}
@Override
public int getOffset(){
return this.page;
}
}
我傳遞給findWashHistoryByTimeBetweenOrderByTimeDesc(new LimitAndOffsetPageable (0,100))
(偏移= 0,限= 100)
向我們展示您的實體類。 – xenteros
感謝您的回覆,我添加洗滌和清洗歷史 –