通过遵循春季数据中的预测官方教程,mongodb https://docs.spring.io/spring-data/mongodb/docs/current/reference/html/#projections将获得
java.lang.IllegalArgumentException:无法找到PersistentEntity 类型com.sun.proxy。$ Proxy109!
用于NamesOnly Projection:
interface NamesOnly {
String getFirstname();
String getLastname();
}
@RepositoryRestResource
interface PersonRepository extends Repository<Person, UUID> {
Collection<NamesOnly> findByLastname(@Param("lastName") String lastname);
}
可以让这个例子起作用吗?
答案 0 :(得分:1)
您需要定义 @RestController 类并从控制器调用 findByLastname 存储库方法,例如:
@RestController
@RequestMapping("/api")
public class PersonController {
@Autowired
private PersonRepository personRepository;
@GetMapping(path = "/persons/findByLastname")
public Collection<NamesOnly> findByLastname(@Param("lastName") final String lastName) {
Collection<NamesOnly> result = personRepository.findByLastname(lastName);
return result;
}
}