springData:Spring的一个子项目,用于简化数据库访问,支持nosql和关系数据存储,其主要目标是便于数据库的访问变得方便便捷。
Repository接口:
1。Repository是一个空接口,即一个标记接口。
2。若我们定义的接口继承了Repository,则该就扣会被IOC容器识别为一个Repository bean,纳入到IOC容器中,进而可以再该接口中定义满足一定规范的方法。
3。实际上也可以通过注解的方式@RepositoryDefinition注解替代继承Repository接口
Repository的子接口:
在Repository子接口中声明方法
1。不是随便声明的,而需要符合一定的规范
2。查询方法以find,read,get开头
3。设计条件查询时,条件的属性用条件关键字链接
4。要注意的是,条件属性以首字母大写
5。支持属性的级联查询。若当前类有符合条件的属性,则优先使用,而不是用级联属性,若需要使用级联属性,则属性之间使用_进行链接
自定义query
使用@query注解,以实现更灵活的查询:
使用占位符:
更新操作:
使用@modifying
CrudRerpository接口:
PagingAndSortingRepository接口:
例子:
JpaRepository接口:
JpaSpecificationExecutor:
@Test
public void test01(){
PersonRepsotory personRepsotory = ctx.getBean(PersonRepsotory.class);
Person person = personRepsotory.getByLastName("AA");
System.out.println(person.getId());
}s