fix boot 2 upgrade, rename package
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
package com.baeldung.persistence.dao;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceContext;
|
||||
import javax.persistence.criteria.CriteriaBuilder;
|
||||
import javax.persistence.criteria.CriteriaQuery;
|
||||
import javax.persistence.criteria.Predicate;
|
||||
import javax.persistence.criteria.Root;
|
||||
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import com.baeldung.persistence.model.User;
|
||||
import com.baeldung.web.util.SearchCriteria;
|
||||
|
||||
@Repository
|
||||
public class UserDAO implements IUserDAO {
|
||||
|
||||
@PersistenceContext
|
||||
private EntityManager entityManager;
|
||||
|
||||
@Override
|
||||
public List<User> searchUser(final List<SearchCriteria> params) {
|
||||
final CriteriaBuilder builder = entityManager.getCriteriaBuilder();
|
||||
final CriteriaQuery<User> query = builder.createQuery(User.class);
|
||||
final Root r = query.from(User.class);
|
||||
|
||||
Predicate predicate = builder.conjunction();
|
||||
UserSearchQueryCriteriaConsumer searchConsumer = new UserSearchQueryCriteriaConsumer(predicate, builder, r);
|
||||
params.stream().forEach(searchConsumer);
|
||||
predicate = searchConsumer.getPredicate();
|
||||
query.where(predicate);
|
||||
|
||||
return entityManager.createQuery(query).getResultList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void save(final User entity) {
|
||||
entityManager.persist(entity);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user