Java MySQL有一个包含2列的表。如何生成只有一列的列表?

Java MySQL有一个包含2列的表。如何生成只有一列的列表?,java,mysql,spring,Java,Mysql,Spring,MySQL数据库包括一个具有两列的表。我试图生成一个列表,只显示一列的数据。我尝试了@Query,但它抛出了一个铸造错误。还有其他可能的选择吗?感谢您对这位新手的指导。谢谢大家! 当我删除@Query时,两列都正确地从mySQL中提取,因此连接没有问题 @Query("select p.date from PublicHoliday p" ) List<PublicHoliday> findAll(); @Query(“从PublicHoliday p中选择p.date”)

MySQL数据库包括一个具有两列的表。我试图生成一个列表,只显示一列的数据。我尝试了@Query,但它抛出了一个铸造错误。还有其他可能的选择吗?感谢您对这位新手的指导。谢谢大家!

当我删除@Query时,两列都正确地从mySQL中提取,因此连接没有问题

@Query("select p.date from PublicHoliday p" )
    List<PublicHoliday> findAll();
@Query(“从PublicHoliday p中选择p.date”)
列出findAll();
List phList=phRepo.findAll();
来自web的错误消息:

Failed to convert from type [java.util.ArrayList<?>] to type [@org.springframework.data.jpa.repository.Query java.util.List<sg.edu.nus.lms1.model.PublicHoliday>] for value '[2019-05-19, 2019-05-20, 2019-06-04, 2019-08-09]'; nested exception is org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [java.lang.String] to type [@org.springframework.data.jpa.repository.Query sg.edu.nus.lms1.model.PublicHoliday]
无法将值“[2019-05-1192019-05-2022019-06-042019-08-09]”的类型[java.util.ArrayList]转换为类型[@org.springframework.data.jpa.repository.Query java.util.List];嵌套异常为org.springframework.core.convert.ConverterNotFoundException:未找到能够从类型[java.lang.String]转换为类型[@org.springframework.data.jpa.repository.Query sg.edu.nus.lms1.model.publichholiday]的转换器
即使我在代码中将其更改为ArrayList:

Failed to convert from type [java.util.ArrayList<?>] to type [@org.springframework.data.jpa.repository.Query java.util.ArrayList<sg.edu.nus.lms1.model.PublicHoliday>] for value '[2019-05-19, 2019-05-20, 2019-06-04, 2019-08-09]'; nested exception is org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [java.lang.String] to type [@org.springframework.data.jpa.repository.Query sg.edu.nus.lms1.model.PublicHoliday]
无法将值“[2019-05-1192019-05-2022019-06-042019-08-09]”的类型[java.util.ArrayList]转换为类型[@org.springframework.data.jpa.repository.Query java.util.ArrayList];嵌套异常为org.springframework.core.convert.ConverterNotFoundException:未找到能够从类型[java.lang.String]转换为类型[@org.springframework.data.jpa.repository.Query sg.edu.nus.lms1.model.publichholiday]的转换器

如果查询日期序列,为什么需要PublicHoliday的对象列表?框架不知道如何将日期转换为模型实例

//编辑

如果要使用Spring数据,最简单的方法是将查询结果集合更改为
List
,如下所示:

@Query("select p.date from PublicHoliday p" )
List<Date> findAll();
@Query(“从PublicHoliday p中选择p.date”)
列出findAll();
通过这种构造,JPA将知道如何将查询结果(日期序列)转换为这些日期的正确集合


我建议更改该方法的名称,因为它是由Spring数据生成的默认查询名称(请看:)

您需要一个行映射器来获取java.sql.Date并返回PublicHoliday。你为什么需要JPA?从JdbcTemplate开始简单。第一列是日期类型,第二列是字符串类型。对于如何从这种类型的表中列出,请提供一些指导。。提前谢谢你!
@Query("select p.date from PublicHoliday p" )
List<Date> findAll();