2016-12-20 3 views
0

Ich habe versucht, die mit der jpaRepository gespeicherte Nachricht zu drucken, aber ohne Glück konnte ich es nicht tun und googelte es auch und ich verstehe einfach nicht :) Ich habe versucht zu tun und zu spielen mit einem ListArray, die nicht den Trick haben, geht es;Drucken Nachricht im Repository nach dem Zufallsprinzip

@RequestMapping("/") 
@ResponseBody 
public String home() { 

    ArrayList<String> List = new ArrayList(); 
    List.add(msg1.getContent()); 
    List.add(msg.getContent()); 

    Random random = new Random(); 
    int index = random.nextInt(List.size()); 

    return List.get(index); 
} 

Also, wenn Sie den Zugriff auf index i bekommen zufällig was im Array ist, aber ich würde gerne wissen, wie würde ich dies implementieren mit einem jpaRepository, ich dies tat;

Also das Problem hier ist, wie würde ich zurückkehren, um zufällig die Strings innerhalb des Repository zu erhalten? Bitte helfen, geschätzt.

+1

Das "Repository" hat nichts mit der JPA-API zu tun. Es ist Spring Data JPA API. Tags behoben –

+0

das zeigt nur, wie gut ich damit bin. Danke :) – rockStar

Antwort

0

Ich habe eine harte Zeit zu sehen, was Sie für das verwenden möchten, aber ich denke, ich habe eine Lösung.

Wenn Sie JpaRepository Hierarchie betrachten, werden Sie sehen, dass es PagingAndSortingRepository implementieren, was bedeutet, dass es Paginierung unterstützt, so könnte man die folgenden Möglichkeiten wählen eine zufällige Seite der Größe eines tun:

Random random = new Random(); 
// guard against 0 entities 
int index = random.nextInt((int) helloMessageRepository.count() +1); 
List<HelloMessage> list = helloMessageRepository.findAll(new PageRequest(index, 1)); 
HelloMessage msg = list.getContent().get(0); 

Unter der Annahme, niemand plötzlich Einträge aus der DB löscht, sollte so etwas funktionieren (Ich habe den Code nicht getestet, daher muss er angepasst werden, und Sie brauchen eine spezielle Behandlung, wenn die Datenbank leer ist).

+0

Hallo, ich habe den Code ausprobiert, aber ich habe ein Kompatibilitätsproblem mit 'List ' hier ist mein Code bitte überprüfen http://pastebin.com/qY6hssf0. und Danke für die Antwort. – rockStar

Verwandte Themen