我在从自定义查询访问数据时遇到问题。
这是 POJO:
@Getter
@Setter
@NoArgsContructor
@AllArgsConstructor
@Entity
@Table(name = "run_list")
public class RunList {
@Id
@Column(name = "id")
private Long id;
@Column(name = "control_run_name"
private String serverName;
@Column(name = "control_run_date"
private Date controlRunDate
<.. bunch of other fields .. >
Run Code Online (Sandbox Code Playgroud)
这是存储库:
public interface RunListRepository extends JpaRepository<RunList, Long> {
@Query("SELECT u.serverName,count(u) as controlRunCount from RunList u where u.controlRunDate < :lastUploadDate group by u.serverName")
List<RunList> findAllControlRunAfterDate(@Param("lastUploadDate") Date lastUploadDate);
Run Code Online (Sandbox Code Playgroud)
在控制器中,我像这样调用存储库方法:
Date date = new SimpleDateFormat("yyyy-MM-dd").parse("2020-03-01");
model.addAttribute("runList",runListRepository.findAllControlRunAfterDate(date);
Run Code Online (Sandbox Code Playgroud)
与查询中日期的绑定工作正常,我得到了分组的第一个结果,这样问题就解决了。问题是我在运行此命令时遇到错误:
Failed to convert from type[java.lang.Object[]] …Run Code Online (Sandbox Code Playgroud)