Spring Data Jpa 支持定义在Repository接口中的方法名来定义查询,方法名是根据实体类的属性来确定的。
1)常规查询
public interface PersonRepository extends JpaRepository<Person, Long>{
//通过名字相等查询
List<Person> findByName(String name);
//通过名字Liek查询,参数为name
List<Person> findByNameLike(String name);
//通过名字和地址查询,参数为name和address
List<Person> findByNameAndAddress(String name,String address);
这里使用findBy、Like、And这样关键字。其中findBy可以用find、read、readBy、query、queryBy、get、getBy来代替。
Like和 and这类查询关键字:
2)、限定结果数量
public interface PersonRepository extends JpaRepository<Person, Long>{
//获得符合查询条件的前10条数据
List<Person> findFirst10ByName(String name);
//获取符合查询条件的前30条数据
List<Person> findTop30ByName(String name);