【发布时间】:2017-04-01 06:02:17
【问题描述】:
我正在使用 Spring Boot JPA,我只想返回状态 ID 不为空的值。查询此问题的最佳方法是什么?
域
@ManyToOne
@JoinColumn(name = "entity_status_id")
private entityStatusLookup entityStatusLookup;
实体控制器
public interface EntityRepository extends CrudRepository<Batch, String> {
public Page<Entity> findByUploadUserOrderByUploadDateDesc(String userId, Pageable page);
public Entity findByEntityId(String entityId);
}
api
@RequestMapping(value="/entity/user", method=RequestMethod.GET)
public HttpEntity<PagedResources<Entity>> getEntityByUser(Pageable page, PagedResourcesAssembler assembler) {
String user = SecurityContextHolder.getContext().getAuthentication().getName();
Page<Enity> entityItems = entityRepository.findByUploadUserOrderByUploadDateDesc(user, page);
return new ResponseEntity<>(assembler.toResource(entityItems), HttpStatus.OK);
}
我意识到我可以遍历返回的页面并查找要删除的空值,但我宁愿让查询只返回非空值。我不确定在实体状态 id 上查询 not null 的最佳方法是什么。
【问题讨论】:
-
你有没有花时间阅读the reference guide,例如table 4,它解释了关键字...
标签: sql spring spring-boot spring-data-jpa