SpringDataJPA之JpaRespository接口的使用
JpaRepository:是PagingAndSortingRepository的子接口,将上面三个接口的返回值做了优化,方便调用时返回结果集。
由于导包,创建POJO,applicationContext.xml,数据库文件和前面的Respositiry的相同就不再站代码了,直接上它的接口和测试类。
- 创建接口实现继承
package com.OVA.dao;
import org.springframework.data.jpa.repository.JpaRepository;
import com.OVA.pojo.Users;
/**
* @author OVA_Wom
* →表示继承
* JpaRepository
* 主要是从继承的JpaRepository→(PagingAndSortingRespository→CrudRepository)里面对方法的返回值做了处理
**/
public interface UserDao extends JpaRepository<Users, Integer> {
}
只需继承JpaRepository就能实现对PagingAndSortingRespository结果返回值的优化,方便我我i们的使用和操作。
2. 测试类编写
package test;
import java.util.List;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Sort;
import org.springframework.data.domain.Sort.Direction;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.OVA.dao.UserDao;
import com.OVA.pojo.Users;
/**
* @author OVA_Wom JPARepository测试接口
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class TestJPARepositoryTest {
@Autowired
private UserDao userdao;
Users users = null;
// 查询全部数据按照年龄排序
@Test
public void TestFindAll() {
Sort sort = new Sort(Direction.DESC, "userage");
//经过JPARepository处理后userdao.findAll(sort)的返回值不在是一个迭代器变成了一个集合的形式
List<Users> findAll = userdao.findAll(sort);
for (Users users : findAll) {
System.out.println(users);
}
}
}
代码已经加详细的注释,以上就是JpaRespository接口的基本内容,不足之处还请大神指正。