【问题标题】:I am not able to retrieve the list of data from the dataBase我无法从数据库中检索数据列表
【发布时间】:2020-06-30 23:19:13
【问题描述】:

我的控制器

@RequestMapping("findFlights")
public String findFlights(@RequestParam("from") String from, @RequestParam("to") String to,
        @RequestParam("departureDate") @DateTimeFormat(pattern ="MM-dd-yyyy") Date departureDate,
        ModelMap modelMap) {
    List<Flight> flights = flightRepository.findFlights(from, to, departureDate);

    modelMap.addAttribute("flights", flights);
    return "displayFlights";

}

}

我的存储库

public interface FlightRepository extends JpaRepository<Flight, Long> {

@Query("from Flight where departureCity=:departureCity and arrivalCity=:arrivalCity and dateOfDeparture=:dateOfDeparture")

List<Flight> findFlights(@Param("departureCity") String from, @Param("arrivalCity") String to,
        @Param("dateOfDeparture") Date departureDate);

}

我的实体

@Entity
public class Flight extends AbstractEntity{
private String flightNumber;
private String operatingAirlines;
private String departureCity;
private String arrivalCity;
private Date dateOfDeparture;
private Timestamp estimatedDepartureTime;
// Getters and Setters

问题 即使我的数据库具有以下所需的数据组合,我也无法从数据库获取航班列表: List&lt;Flight&gt; flights = flightRepository.findFlights(from, to, departureDate);

但航班列表始终为空白 (flights[])

【问题讨论】:

    标签: spring spring-boot spring-data-jpa spring-data


    【解决方案1】:

    这个方法将取代上面的查询

     List<Flight> findByDepartureCityAndArrivalCityAndDateOfDeparture(String from,String to,Date departureDate)
    

    尝试在您的 Hql 查询中使用 Like%

    【讨论】:

      【解决方案2】:

      对于自定义查询,您可以使用 jpql

      @Query("SELECT f FROM Flight f WHERE f.departureCity = ?1 and f.arrivalCity = ?2 and f.dateOfDeparture = ?3")
      List<Flight> findFlight(String from, String to, Date departureDate);
      

      你应该用@Column注解来注解Entity类

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-01-27
        • 2014-04-20
        • 1970-01-01
        • 2015-12-14
        • 2015-08-05
        相关资源
        最近更新 更多