簡體   English   中英

Spring JPA - 存儲庫查詢返回 0 行

[英]Spring JPA - Repository Query is returning 0 rows

我有這個存儲庫類:

public interface ShiftRepository extends CrudRepository<Shift, Long> {
    @Query("SELECT s FROM Shift s")
    public List<Shift> getAllShifts();
}

我想做的就是抓住所有的班次。

調用它的服務只是這樣做:

 public List<Shift> getAllShifts() {
    return shiftRepository.getAllShifts();
 }

而控制器只是這樣做:

public ResponseEntity<List<Shift>> getAllShifts() {
    List<Shift> shifts;
    try {
      shifts = shiftService.getAllShifts();
    } catch (Exception e) {
      return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(new ArrayList<>());
    }

if (shifts != null) {
  System.out.println(shifts.size());
  return ResponseEntity.status(HttpStatus.OK).body(shifts);
} else {
  return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(new ArrayList<>());
}

}

在前端,我收到了這個回復。 空的班次數組

成功 200 響應

所以我不知道問題是什么,我只想要所有的記錄。 使用 Spring Boot 和 Heroku Postgres

應用程序.yml:

spring:
  jpa:
    properties:
      hibernate.default_schema: dev_env
    hibernate:
      ddl-auto: create-drop
    database-platform: org.hibernate.dialect.PostgreSQLDialect
  datasource:
    hikari:
      schema: dev_env
    driverClassName: org.postgresql.Driver
    type: org.apache.tomcat.jdbc.pool.DataSource

您的問題似乎在那個 Query 注釋中。 您必須在查詢之前定義值標簽。 作為:

@Query(value = "SELECT s FROM Shift s")

很抱歉浪費時間。 很晚了,我對 Spring boot 和 React 調試我的應用程序非常着迷。 沒有意識到我沒有用測試數據填充數據庫 XD

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM