本文共 1579 字,大约阅读时间需要 5 分钟。
@NoRepositoryBeanpublic interface CrudRepositoryextends Repository { S save(S var1);Iterablesave(Iterablevar1); T findOne(ID var1); boolean exists(ID var1); IterablefindAll(); Iterable findAll(Iterable var1); long count(); void delete(ID var1); void delete(T var1); void delete(Iterable var1); void deleteAll();}
@NoRepositoryBeanpublic interface JpaRepositoryextends PagingAndSortingRepository , QueryByExampleExecutor { List findAll(); List findAll(Sort var1); List findAll(Iterable var1); Listsave(Iterablevar1); void flush();S saveAndFlush(S var1); void deleteInBatch(Iterablevar1); void deleteAllInBatch(); T getOne(ID var1); ListfindAll(Examplevar1);ListfindAll(Examplevar1, Sort var2);}
看一下他们的继承关系
@Transactional publicListsave(Iterableentities) { Listresult = new ArrayList(); if (entities == null) { return result; } for (S entity : entities) { result.add(save(entity)); } return result; }
@Transactional publicS save(S entity) { if (entityInformation.isNew(entity)) { em.persist(entity);//是新的就插入 return entity; } else { return em.merge(entity); //不是新的merge } }
参考: