나는이 작업을 수행하려고 :저장소의 @Query에서 결과를 올바르게 변환하는 방법은 무엇입니까?
@Query(value = "SELECT * from student, class where student.class = class.id ..(and more)", nativeQuery= true)
List<MyObject> findByStudentId(@Param("studentId") long studentId);
이 현재 나에게 컨버터의 예외가 발생, 뭔가를 같이 :
org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [java.lang.Integer] to type [com.project.model.MyObject]
at org.springframework.core.convert.support.GenericConversionService.handleConverterNotFound(GenericConversionService.java:324) ~[spring-core-4.3.13.RELEASE.jar:4.3.13.RELEASE]
그래서 나는 추측 구현하는 변환이 있어야합니다.
List를 반환하면 완벽하게 작동하지만 필드 결과를 배열로 가진 Object를 반환합니다.
모든 것을 수정하지 않고도 내 쿼리를 계속 사용하려면이 변환을 수행하는 가장 좋은 방법은 무엇입니까?
글쎄, 난 당신을 생각 :
서비스 계층에서이는 등을 MyObject의 세터 요소에 매핑 할 수 있습니다 학생들의 목록을 반환 할 수 있습니다. 그런 다음 필드의 하위 집합으로 맞춤 개체를 만드는 대신 학생 개체를 직접 사용할 수 있습니다. 왜 맞춤 개체를 사용하고 싶습니까? – Teo