我正在使用 Spring Data Jpa 进行开发。我有一个扩展JpaRepository的接口,我想使用Query Method和分页进行查询。
我想查询“从作弊中选择 * 投票 <= 5”
我有一个简单的代码。该实体如下:
@Entity
@Table(name="cheat")
@DynamicInsert
@DynamicUpdate
@Data
@RequiredArgsConstructor(staticName="of")
public class Cheat implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="cheat_seq", length=10)
private Long cheatSeq;
@Column(name="question", unique=true, nullable=false)
private String question;
@Column(name="answer", unique=true, nullable=false)
private String answer;
@Column(name="writer_ip", nullable=false)
private String writerIP;
@Temporal(TemporalType.TIMESTAMP)
@Column(name="reg_date", nullable=false)
private Date regDate;
@Column(name="vote", nullable=false)
private Long vote;
@Column(name="bad_vote", nullable=false)
private Long badVote;
}
存储库如下:
public interface CheatRepository extends JpaRepository<Cheat, Long>{
Page<Cheat> findByVoteLessThan(int i, PageRequest page);
}
我查询:
PageRequest pgRequest = PageRequest.of(pageNo, 5, new Sort(Direction.DESC, "regDate"));
cheatRepository.findByVoteLessThan(5, pgRequest);
它说只有 1 个参数存在。当然,我只是为投票 <= 5和分页信息提供“5”值。什么地方出了错??
编辑
我找到了正确答案。在repository类中,参数PageRequest是错误的。它是可分页的。
HUX布斯
相关分类