2015-10-21 4 views
0

je dois exécuter une requête qui estComment courir entre et comme l'article en utilisant Pagination et tri avec ressort de données JPA

SELECT * FROM transaction WHERE account LIKE '%deepak%' and date_created BETWEEN 'Thu Jan 01 00:00:00 IST 2015' AND 'Wed Dec 16 00:00:00 IST 2015' ORDER BY date_created ASC OFFSET 5 LIMIT 10; 

actuellement je suis en mesure d'effectuer 4 fonctions en utilisant JPA qui sont: -

  • Set Offset
  • Définir la page Taille
  • ordre
  • Set Trier par nom de colonne

en utilisant le code suivant: -

PageRequest request = new PageRequest(1, 10, Sort.Direction.ASC, date_created); 
return transactionRepository.findAll(request); 

Mais comment exécuter les fonctions restant à savoir 'entre' clause et 'comme' l'article à l'aide Pagination et tri avec ressort de données JPA

Autre les méthodes suggérées sont également les bienvenues.

Répondre

0

Jetez un oeil à Spring jpa data reference documentation,

Ajouter à votre repository que Prolonge PagingAndSortingRepository<..,..>

findByAccountLikeAndDateCreatedBetween(String account,Date start,Date end,Pageable pageable) 
0

Si vous êtes familier avec JPQL vous pouvez toujours annoter une requête avec @Query dans votre référentiel. c'est-à-dire:

@Query("select t from transaction t where t.name like ?1") 
List<Transaction> getTransactions(String name, Pageable pageable) 

où? 1 est le premier paramètre que vous avez passé, dans ce cas le nom. Notez que Pageable doit toujours être le dernier paramètre. De cette façon, vous pouvez nommer votre requête comme vous le souhaitez.

Voir plus d'infos here.