JPA添加、修改、删除的实现
JpaRepository接口方法:
- delete 删除或批量删除
- findAll 查找所有
- findOne 查找单个
- save 保存单个或批量保存
- saveAndFlush 保存并刷新到数据库
JPA查询操作的基本实现
-
基于方法名解析的概念
JpaRepository支持接口规范方法名查询。即如果在接口中定义的查询方法符合它的命名规则,就可以不用写实现。
有如下两个重点需要注意: >- 方法名需要在接口中设定
- 必须符合一定的命名规范
-
方法名构造
find + 全局修饰 + By + 实体的属性名称 + 限定词 + 连接词 + …(其他实体属性) + OrderBy + 排序属性 + 排序方向
例如:
findDistinctByFirstNameIgnoreCaseAndLastNameOrderByAgeDesc(String firstName,String lastName){......}
插入、更新、删除方法为要添加@Modifying注解和@Transactional注解
1、当加上@Modifying注解时,JPA会以更新类语句来执行,而不再是以查询语句执行。
2、调用的控制类,默认有只读事务@Transactional(readOnly = true);为了实现保存、更新、删除操作方法都用@Transactional重新注解(默认readOnly=false)
网友评论