HibernateCriteriaBuilder builder = entityManager
.unwrap(Session.class)
.getCriteriaBuilder();
CriteriaQuery<Post> criteria = builder.createQuery(Post.class);
Root<Post> post = criteria.from(Post.class);
ParameterExpression<String> parameterExpression = builder
.parameter(String.class);
List<Post> posts = entityManager.createQuery(
criteria
.where(
builder.ilike(
post.get(Post_.TITLE),
parameterExpression)
)
.orderBy(
builder.asc(
post.get(Post_.ID)
)
)
)
.setParameter(parameterExpression, titlePattern)
.setMaxResults(maxCount)
.getResultList();