如果你不想暴露那么多的方法,可以自己訂制自己的Repository,還可以在自己的Repository里面添加自己使用的公共方法
當然更靈活的是自己寫一個實現類,來實現自己需要的方法
1:寫一個與接口同名的類,加上后綴為Impl,這個在前面xml里面配置過,可以自動被掃描到。這個類不需要實現任何接口。
2:在接口中加入自己需要的方法,比如:
public Page<Object[]> getByCondition(UserQueryModel u);
3:在實現類中,去實現這個方法就好了,會被自動找到
java代碼:
@PersistenceContext
private EntityManager em;
public Page<Object[]> getByCondition(UserQueryModel u){
String hql = "select o.uuid,o.name from UserModel o where 1=1 and o.uuid=:uuid";
Query q = em.createQuery(hql);
q.setParameter("uuid", u.getUuid());
q.setFirstResult(0);
q.setMaxResults(1);
Page<Object[]> page = new PageImpl<Object[]>(q.getResultList(),new PageRequest(0,1),3);
return page;
}}
