springboot的通用BaseDAO写法

接口BaseDAO继承JpaRepository<T,ID> 因为要用这里面的通用CURD


@NoRepositoryBean
public interface BaseDAO <T,ID extends Serializable> extends JpaRepository<T,ID> {

}
 
  
BaseDAO的实现类BaseDAOImpl 写法
 
  
 
  
@NoRepositoryBean
public class BaseDAOImpl<T, ID extends Serializable> extends SimpleJpaRepository<T,ID>
        implements BaseDAO<T,ID> {
    private final EntityManager entityManager;

    public BaseDAOImpl(Class<T> domainClass, EntityManager entityManager) {
        super(domainClass, entityManager);
        this.entityManager = entityManager;
    }
}
 
  
这样的话就可以用
SimpleJpaRepository里面的CURD了 附带实现类
 
  
 
  
private final EntityManager entityManager;

public RoController(EntityManager entityManager) {
    this.entityManager = entityManager;
}
方法里面写
 
  
BaseDAOImpl dao = new BaseDAOImpl<>(RoUser.class,entityManager);
这样直接dao调用通用的BaseDAO就写好了
 
  
 
  
 
  

你可能感兴趣的:(springboot的通用BaseDAO写法)