SpringData 学习(6)—— 学习 Repository 接口的第 1 个子接口 CRUDRepository

CRUDRepository 的使用很简单,原来我们继承 Repository ,现在我们继承 CRUDRepository ,就可以使用 CRUDRepository 固定的一些方法,我们不用写 SQL 语句。

public interface BookRepository extends CrudRepository<Book, Integer> {

}

说明:里面可以不用写任何方法,因为 CrudRepository 接口,自己就有很多方法。

SpringData 学习(6)—— 学习 Repository 接口的第 1 个子接口 CRUDRepository_第1张图片

CrudRepository 接口提供了最基本的对实体类的添删改查操作 
T save(T entity);//保存单个实体 
Iterable save(Iterable entities);//保存集合        
T findOne(ID id);//根据id查找实体         
boolean exists(ID id);//根据id判断实体是否存在         
Iterable findAll();//查询所有实体,不用或慎用!         
long count();//查询实体数量         
void delete(ID id);//根据Id删除实体         
void delete(T entity);//删除一个实体 
void delete(Iterable entities);//删除一个实体的集合         
void deleteAll();//删除所有实体,不用或慎用! 

我们测试的方法是添加集合,因为是添加操作,所以还是要放在 Service 层,启用事务注解。

@Service
public class BookService {

    @Autowired
    private BookRepository bookRepository;

    @Transactional
    public void saveBookList(List books){
        bookRepository.save(books);
    }
}

测试方法:

// 以下测试 CrudRepository 接口的使用
@Test
public void testCrudRepository(){
    List books = new ArrayList<>();
    for(int i='a';i<='z';i++){
        Book book = new Book();
        book.setName((char)i+""+(char)i+"@sina.com");
        book.setAuthor((char)i+""+(char)i);
        books.add(book);
    }
    bookService.saveBookList(books);
}

你可能感兴趣的:(SpringData)