stecken zu bleiben versuchen, die neuesten Datensatz aus einer Registriert ich zu holen haben die folgenden KlassenJPA @OneToMany neueste Rekord nach dem Datum erhalten von Join
Autor
@Entity
@Table(name = "author")
public class Author {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
@Column(name = "name")
private String name;
@OneToMany
@JoinColumn(name = "author_id", referencedColumnName = "id")
@OrderBy("id Desc")
private List<Book> books;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<Book> getBooks() {
return books;
}
public void setBooks(List<Book> books) {
this.books = books;
}
}
Buch
@Entity
@Table(name = "book")
public class Book {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
@Column(name = "author_id")
private Integer authorId;
@Column(name = "date_published")
private Date datePublished;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public Integer getAuthorId() {
return authorId;
}
public void setAuthorId(Integer authorId) {
this.authorId = authorId;
}
public Date getDatePublished() {
return datePublished;
}
public void setDatePublished(Date datePublished) {
this.datePublished = datePublished;
}
}
Aufbewahrungsort
@Repository
public interface AuthorRepository extends
JpaRepository<Author, Long> {
public Page<Author> findALL(int id, Pageable pageable);
}
Aktuelle Ergebnisse
{
"id": 1,
"name": "James",
"books":[
{
"id": 1,
"name": "book1",
"datePublished": '12/12/2012'
},
{
"id": 1,
"name": "book2",
"datePublished": '01/02/2013'
}]
},
{
"id": 2,
"name": "Tim",
"books":[
{
"id": 5,
"name": "book5",
"datePublished": '12/12/2014'
},{
"id": 6,
"name": "book6",
"datePublished": '01/02/2015'
}]
}
Erwartetes Ergebnis
{
"id": 1,
"name": "James",
"books":[
{
"id": 1,
"name": "book2",
"datePublished": '01/02/2013'
}]
},
{
"id": 2,
"name": "Tim",
"books":[
{
"id": 6,
"name": "book6",
"datePublished": '01/02/2015'
}]
}
Daraus ergibt sich eine Liste der Autoren werden mit all ihren jeweiligen Bücher zurückgegeben.
Frage ist, wie JPA mir helfen kann, nur das späteste Buch von der Ansammlung auszuwählen, die auf dem veröffentlichten Datum basiert ist.
Können Sie ein wenig mehr auf Ihre Frage "Wie kann JPA mir helfen, nur das neueste Buch aus der Sammlung basierend auf Datum veröffentlicht auswählen."? –
Nur aktuelle und erwartete Ergebnisse hinzugefügt. Hoffe, das macht es ein bisschen klar. Wahrscheinlich, wenn es möglich ist, ein Maximum an der Sammlung von Büchern pro Autor zu machen –
Also, im Grunde, Sie versuchen, das neueste Buch (einzelnes Buch) aus der Liste der Bücher für jeden Benutzer zu bekommen? –