java学习简单笔记20190311
2019-03-11 09:29 lofe 阅读(193) 评论(0) 编辑 收藏 举报spring data jpa,通过类对象映射数据库中的记录的映射关系
使用数据访问层,需要自己的接口继承JpaRepository<T,ID extends Serizeble>,便默认有了几个访问数据操作的方法List<T> findAll();List<T> findAll(Sort sort),List<S> save(Iterable<S> entiies); saveandflush(s entities); deleteInBatch(Iterable<T> entities); T getOne(ID id);
配置使用jap,在配置类中注解@EnableJpaRepositories("com.xxx"),并配置datasource,等
JPA定义查询方法中,而方法名是根据属 性名来确定的,如果List<Person> findByName(String name),FindByNameLike(String name);
限制行数据可用first10或者top20等,如findFirst10ByName(String name),
在实体类中还支持注解NamedQuery查询,@Query查询
@entity
@NamedQuery(name="Person.findByName",query="select * from......")
public class Person(){}
@Query("select * from.....")
List<Person> findByAddress(String address)
更新语句还支持@Modify和@Query组合
@Modify
@Query("update set...p.name=?1")
int setName(String name)
传参数两种方式,一种是带顺序号,如果xxx=?1,一种是参数名:address,在形参前加注解@Parm("address") ,如 int setAddress(@Parm("address") String address)