Java 类javax.persistence.criteria.CriteriaBuilder.In 实例源码
项目:TechnologyReadinessTool
文件:OrgTypeDAOImpl.java
@Override
public List<OrgTypeDO> findOrgTypesForScope(Long scopeId, Collection<String> orgTypeCodes) {
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<OrgTypeDO> criteria = cb.createQuery(OrgTypeDO.class);
Root<OrgTypeDO> root = criteria.from(OrgTypeDO.class);
criteria.where(cb.equal(root.get(OrgTypeDO_.scope).get(ScopeDO_.scopeId), scopeId));
In<String> inOrgTypeCode = cb.in(root.get(OrgTypeDO_.code));
if (orgTypeCodes.isEmpty()) {
inOrgTypeCode.value((String) null);
} else {
for (String orgTypeCode : orgTypeCodes) {
inOrgTypeCode.value(orgTypeCode);
}
}
criteria.where(inOrgTypeCode);
TypedQuery<OrgTypeDO> query = em.createQuery(criteria);
query.setHint("org.hibernate.cacheable", Boolean.TRUE);
return query.getResultList();
}
项目:SpringMVCSeedProject
文件:Query.java
/**
* 包含
*
* @param propertyName 属性名称
* @param values 参数集合
* @return query实例
*/
public Query whereIn(@NotNull final String propertyName,
@NotNull final List<ParameterExpression> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.forEach(in::value);
this.predicates.add(in);
return this;
}
项目:SpringMVCSeedProject
文件:Query.java
/**
* 包含
*
* @param propertyName 属性名称
* @param values 参数值集合
* @return query实例
*/
public Query whereValueIn(@NotNull final String propertyName,
@NotNull final List<Object> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.stream()
.map(this::makeParameter)
.collect(Collectors.toList())
.forEach(in::value);
this.predicates.add(in);
return this;
}
项目:SpringMVCSeedProject
文件:Query.java
/**
* 不包含
*
* @param propertyName 属性名称
* @param values 参数集合
*/
public Query whereNotIn(@NotNull final String propertyName,
@NotNull final List<ParameterExpression> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.forEach(in::value);
this.predicates.add(criteriaBuilder.not(in));
return this;
}
项目:SpringMVCSeedProject
文件:Query.java
/**
* 不包含
*
* @param propertyName 属性名称
* @param values 参数集合
*/
public Query whereValueNotIn(@NotNull final String propertyName,
@NotNull final List<Object> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.stream()
.map(this::makeParameter)
.collect(Collectors.toList())
.forEach(in::value);
this.predicates.add(criteriaBuilder.not(in));
return this;
}
项目:FileUpload.Java
文件:Query.java
/**
* 包含
*
* @param propertyName 属性名称
* @param values 参数集合
*/
public Query whereIn(@NotNull final String propertyName, @NotNull final List<ParameterExpression> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.stream().forEach(in::value);
this.predicates.add(in);
return this;
}
项目:FileUpload.Java
文件:Query.java
/**
* 包含
*
* @param propertyName 属性名称
* @param values 参数值集合
*/
public Query whereValueIn(@NotNull final String propertyName, @NotNull final List<Object> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.stream()
.map(this::makeParameter)
.collect(Collectors.toList())
.stream()
.forEach(in::value);
this.predicates.add(in);
return this;
}
项目:FileUpload.Java
文件:Query.java
/**
* 不包含
*
* @param propertyName 属性名称
* @param values 参数集合
*/
public Query whereNotIn(@NotNull final String propertyName, @NotNull final List<ParameterExpression> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.stream().forEach(in::value);
this.predicates.add(criteriaBuilder.not(in));
return this;
}
项目:FileUpload.Java
文件:Query.java
/**
* 不包含
*
* @param propertyName 属性名称
* @param values 参数集合
*/
public Query whereValueNotIn(@NotNull final String propertyName, @NotNull final List<Object> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.stream()
.map(this::makeParameter)
.collect(Collectors.toList())
.stream()
.forEach(in::value);
this.predicates.add(criteriaBuilder.not(in));
return this;
}
项目:SpringMVCWithJavaConfig
文件:Query.java
/**
* 包含
*
* @param propertyName 属性名称
* @param values 参数集合
* @return query实例
*/
public Query whereIn(@NotNull final String propertyName,
@NotNull final List<ParameterExpression> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.forEach(in::value);
this.predicates.add(in);
return this;
}
项目:SpringMVCWithJavaConfig
文件:Query.java
/**
* 包含
*
* @param propertyName 属性名称
* @param values 参数值集合
* @return query实例
*/
public Query whereValueIn(@NotNull final String propertyName,
@NotNull final List<Object> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.stream()
.map(this::makeParameter)
.collect(Collectors.toList())
.forEach(in::value);
this.predicates.add(in);
return this;
}
项目:SpringMVCWithJavaConfig
文件:Query.java
/**
* 不包含
*
* @param propertyName 属性名称
* @param values 参数集合
*/
public Query whereNotIn(@NotNull final String propertyName,
@NotNull final List<ParameterExpression> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.forEach(in::value);
this.predicates.add(criteriaBuilder.not(in));
return this;
}
项目:SpringMVCWithJavaConfig
文件:Query.java
/**
* 不包含
*
* @param propertyName 属性名称
* @param values 参数集合
*/
public Query whereValueNotIn(@NotNull final String propertyName,
@NotNull final List<Object> values) {
In in = criteriaBuilder.in(from.get(propertyName));
values.stream()
.map(this::makeParameter)
.collect(Collectors.toList())
.forEach(in::value);
this.predicates.add(criteriaBuilder.not(in));
return this;
}
项目:jhipster
文件:QueryService.java
protected <X> Specification<ENTITY> valueIn(SingularAttribute<? super ENTITY, X> field, final Collection<X>
values) {
return (root, query, builder) -> {
In<X> in = builder.in(root.get(field));
for (X value : values) {
in = in.value(value);
}
return in;
};
}
项目:jhipster
文件:QueryService.java
protected <OTHER, X> Specification<ENTITY> valueIn(SingularAttribute<? super ENTITY, OTHER> reference,
SingularAttribute<OTHER, X> valueField, final Collection<X> values) {
return (root, query, builder) -> {
In<X> in = builder.in(root.get(reference).get(valueField));
for (X value : values) {
in = in.value(value);
}
return in;
};
}
项目:cia
文件:AbstractGenericDAOImpl.java
@Override
public final List<T> findListByPropertyInList(final SingularAttribute<T, ? extends Object> property, final Object[] values) {
final CriteriaQuery<T> criteriaQuery = criteriaBuilder.createQuery(getPersistentClass());
final Root<T> root = criteriaQuery.from(getPersistentClass());
criteriaQuery.select(root);
final In<Object> in = criteriaBuilder.in((Path<Object>) root.get(property));
for (final Object object : values) {
in.value(object);
}
criteriaQuery.where(in);
final TypedQuery<T> typedQuery = getEntityManager().createQuery(criteriaQuery);
addCacheHints(typedQuery, "findListByPropertyInList");
return typedQuery.getResultList();
}
项目:MultimediaDesktop
文件:ApplicationServiceImpl.java
@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED, readOnly = true)
public PageDto<ApplicationDto> findBy(final String userId,
final String name, final Date startDate, final Date endDate,
final ApplicationType typeGroup, final List<UserRole> roles,
final Boolean auditingStatu, PageSize pageSize, SortDto sortDto) {
if (pageSize == null) {
pageSize = new PageSize();
}
Page<Application> applications = applicationRepository.findAll(
new Specification<Application>() {
@Override
public Predicate toPredicate(Root<Application> root,
CriteriaQuery<?> query, CriteriaBuilder cb) {
List<Predicate> pres = new ArrayList<Predicate>();
if (!StringUtils.isBlank(userId)) {
pres.add(cb.equal(root.get("addUser")
.as(User.class), new User(userId)));
}
if (!StringUtils.isBlank(name)) {
pres.add(cb.like(root.get("name").as(String.class),
name));
}
// 没办法。Mysql不支持bit查询
pres.add(cb.equal(
root.get("auditingStatu").as(Integer.class),
auditingStatu ? 1 : 0));
if (startDate != null) {
pres.add(cb.greaterThanOrEqualTo(root
.get("addDate").as(Date.class), startDate));
}
if (endDate != null) {
pres.add(cb.lessThanOrEqualTo(root.get("addDate")
.as(Date.class), endDate));
}
if (typeGroup != null) {
pres.add(cb.equal(
root.get("typeGroup").as(
ApplicationType.class), typeGroup));
}
if (roles != null && !roles.isEmpty()) {
In<UserRole> in = cb.in(root.get("role").as(
UserRole.class));
for (UserRole role : roles) {
in.value(role);
}
pres.add(in);
}
Predicate[] p = new Predicate[pres.size()];
return cb.and(pres.toArray(p));
}
}, new PageRequest(pageSize.getPage() - 1, pageSize.getLimit(),
SortUtils.covertSortDto(sortDto)));
return applicationCovert.covertToDto(applications);
}