[英]Customize default queries generated by Spring Data REST
是否可以自定义为Spring Data REST生成的findAll和findById生成的默认查询? 例如,选择columns的子集,因为我发现设置@JsonIgnore不会更改生成的查询中的SELECT列本身。
可以通过@Query自定义搜索查询,但不确定如何处理所有用户或其他用户/ {id}的其他链接
如您所说,搜索查询可以通过@Query进行自定义,因此您可以在接口声明中使用Query注释覆盖默认方法
public interface UserRepository extends JpaRepository<User, Long> {
@Query("select u from User u where u.firstname like %?1")
List<User> findAll();
@Query("select u from User u where u.id == %?1")
User findById(String id);
}
如果要选择列的子集,我建议创建带有公共列的新实体,该实体将映射到与内部表示相同的表。
class UserPublic
... public fields;
并基于新的实体存储库开放API
public interface UserPublicRepository extends JpaRepository<UserPublic, Long> {}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.