2016-11-17 13 views
0

私はスプリングブートJPAを使用しています。ステータスIDがnullでない場合にのみ値を返したいとします。これを照会する最良の方法は何ですか?Spring Boot JPA nullでないクエリ

ドメイン

@ManyToOne 
    @JoinColumn(name = "entity_status_id") 
    private entityStatusLookup entityStatusLookup; 

として、EntityController

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); 

私はループができたことを実現返されたページを介して、削除するnullを探しますが、私はむしろnullではない値を返すクエリを持っています。私はエンティティのステータスIDでnullでないことを照会する最良の方法が何であるか分かりません。

+0

あなたは[リファレンスガイド](http://docs.spring.io/を読むために時間をとっているより多くのオプションのためthe docsを参照してください、あなたのインターフェイスで簡単にそれを行うことができますspring-data/jpa/docs/current/reference/html /#jpa.query-methods.query-creation)たとえば、キーワードを説明する*表4 * –

答えて

6

あなたは

public interface EntityRepository extends CrudRepository<Batch, String> { 
    Iterable<Entity> findByStatusIdNotNull(); 
} 

関連する問題