0
点赞
收藏
分享

微信扫一扫

SpringDataJPA之自定义Repository


  有时候系统提供的接口中的方法并不足以满足我们的需求,这时我们就可以通过自定义Repository来扩展。

自定义Repository

1. 定义接口

/**
* 自定义的Repository接口
*/
public interface UsersRepository {
public Users findUserById(Integer userid);
}

2.使用接口

/**
* SpringDataJPA 实现JpaRepository
* 泛型 第一个参数是对应的Pojo类型
* 第二个参数是注解的包装类型
* 使用自定义的Repository接口
*/
public interface UserDao extends JpaRepository<Users,
Integer>, JpaSpecificationExecutor<Users>, UsersRepository {

}

3.创建接口的实现类

/**
* @program: spring-data-jpa-demo
* @description: 创建接口的实现类
* @author: 波波烤鸭
* @create: 2019-05-18 20:31
*/
public class UserDaoImpl implements UsersRepository {

@Autowired
private EntityManager em;

@Override
public Users findUserById(Integer userid) {
System.out.println("MyRepository ....");
return em.find(Users.class,userid);
}
}

4.单元测试

/**
* @program: spring-data-jpa
* @description: 单元测试
* @author: 波波烤鸭
* @create: 2019-05-18 09:48
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class TestDemo {

@Autowired
private UserDao usersDao;

/**
* 需求:根据用户 ID 查询数据
*/
@Test
public void test1(){
Users users = this.usersDao.findUserById(6);
System.out.println(users);
}
}

SpringDataJPA之自定义Repository_自定义


举报

相关推荐

0 条评论