gpt4 book ai didi

spring-boot - 如何解决找不到能够从 TupleBackedMap 类型转换为 [com.example.dto.ExampleDto] 类型的转换器

转载 作者:行者123 更新时间:2023-12-04 11:59:10 26 4
gpt4 key购买 nike

org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap] to type [com.example.dto.ExampleDto]
at org.springframework.core.convert.support.GenericConversionService.handleConverterNotFound(GenericConversionService.java:321) ~[spring-core-5.1.5.RELEASE.jar:5.1.5.RELEASE]
at org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:194) ~[spring-core-5.1.5.RELEASE.jar:5.1.5.RELEASE]
at org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:174) ~[spring-core-5.1.5.RELEASE.jar:5.1.5.RELEASE]
at org.springframework.data.repository.query.ResultProcessor$ProjectingConverter.convert(ResultProcessor.java:293) ~[spring-data-commons-2.1.5.RELEASE.jar:2.1.5.RELEASE]

当我在使用 native JPA 查询中返回 2 个值的查询时,会抛出上述错误。我在下面的 DTO 中捕获查询响应:
@Data
@Entity
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class ExampleDto {
@Id
private String name1;
private int nameFlag;
}

在 DAO 类中,我调用 native 查询如下。该查询在 SQL Developer 中工作并返回 2 条记录。但是当如下调用时,它会抛出上述错误。
List<ExampleDto> getExampleDto = myJPARepository.
.findNameObject(uuid);

DTO 类中有问题,我需要更改。注释?我不确定这里缺少什么,并尽我所能尝试,放入 @Entity 注释,@Data 注释,在调用查询时我无法解决此错误。

更新:与此相关的 native 查询是
@Query(value = "select name1, nameFlag from NameTable",
nativeQuery = true, name = "findNameObject where namekey = ?")
List<ExampleDto> findNameObject(
@Param("nameKey") UUID nameKey);

最佳答案

这是一个错误:https://jira.spring.io/browse/DATAJPA-1714

您可以将 JPQL 与构造函数表达式、接口(interface)投影或自定义方法实现一起用作解决方法。

关于spring-boot - 如何解决找不到能够从 TupleBackedMap 类型转换为 [com.example.dto.ExampleDto] 类型的转换器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61194243/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com