в моих проектах Spring Boot я использую пользовательские методы в репозитории, которые я могу свернуть, используя предложения IntelliJ.
Пример:
@Repository
public interface BookRepository extends JpaRepository<Book, Integer>
{
List<Book> getAllByAuthor_IdAuthorAndCategory_IdCategoryOrderByTitleASC(int idAuthor, int idCategory);
}
Где выглядит модель Книги:
@Entity
@Table(name = "book")
public class Book {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_book")
private int idBook;
@Column(name = "title")
private String title;
@ManyToOne
@JoinColumn(name = "id_author", referencedColumnName = "id_author")
private Author author;
@ManyToOne
@JoinColumn(name = "id_category", referencedColumnName = "id_category")
private Category category;
public Book() {}
// Setters and Getters....
}
И он действительно отлично работает без какой-либо конфигурации или дополнительных классов! Это так просто и полезно ... но как это работает? Я не могу найти какую-либо документацию или руководство по этой функции в JpaRepository. Я обнаружил это случайно. Буду признателен за любую информацию. Кто-нибудь?