本文整理了Java中org.grails.datastore.mapping.query.Query
类的一些代码示例,展示了Query
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Query
类的具体详情如下:
包路径:org.grails.datastore.mapping.query.Query
类名称:Query
[英]Models a query that can be executed against a data store.
[中]为可以针对数据存储执行的查询建模。
代码示例来源:origin: org.grails/grails-datastore-gorm-hibernate-core
@Override
public PersistentEntity getEntity() {
if (!entityStack.isEmpty()) {
return entityStack.getLast();
}
return super.getEntity();
}
代码示例来源:origin: org.grails/grails-datastore-gorm
/**
* Orders by the specified property name (defaults to ascending)
*
* @param o The order object
* @return This criteria
*/
@Override
public Criteria order(Query.Order o) {
if (paginationEnabledList) {
orderEntries.add(o);
}
else {
query.order(o);
}
return this;
}
代码示例来源:origin: org.grails/grails-datastore-core
/**
* Adds the specified criterion instance to the query
*
* @param criterion The criterion instance
*/
public void add(Criterion criterion) {
Junction currentJunction = criteria;
add(currentJunction, criterion);
}
代码示例来源:origin: org.grails/grails-datastore-gorm
final ConversionService conversionService = query.getEntity().getMappingContext().getConversionService();
if (argMap.containsKey(ARGUMENT_MAX)) {
maxParam = conversionService.convert(argMap.get(ARGUMENT_MAX), Integer.class);
query.join(associationName, joinType);
} else {
FetchType fetchType = getFetchMode(fetchValue);
query.cache(ClassUtils.getBooleanFromMap(ARGUMENT_CACHE, argMap));
query.lock(ClassUtils.getBooleanFromMap(ARGUMENT_LOCK, argMap));
final int offset = offsetParam == null ? -1 : offsetParam;
if (max > -1) {
query.max(max);
query.offset(offset);
代码示例来源:origin: org.grails/grails-datastore-gorm
JoinType joinType = (JoinType) detachedCriteria.getJoinTypes().get(property);
if(joinType != null) {
query.join(property, joinType);
query.join(property);
query.select(property);
query.add(criterion);
query.projections().add(projection);
query.order(order);
代码示例来源:origin: org.grails/grails-datastore-core
final PropertyCriterion pc = (PropertyCriterion) criterion;
String property = pc.getProperty();
Object value = resolvePropertyValue(entity, property, pc.getValue());
pc.setValue(value);
AssociationQuery associationQuery = createQuery(ac.getAssociation().getName());
for (Criterion associationCriterion : ac.getCriteria()) {
associationQuery.add(associationCriterion);
Junction newj;
if (j instanceof Disjunction) {
newj= disjunction(currentJunction);
} else if (j instanceof Negation) {
newj= negation(currentJunction);
newj= conjunction(currentJunction);
addToJunction(newj, c);
代码示例来源:origin: org.grails/grails-datastore-gorm
protected Query buildQuery(DynamicFinderInvocation invocation, Class<?> clazz, Query q) {
applyAdditionalCriteria(q, invocation.getCriteria());
configureQueryWithArguments(clazz, q, invocation.getArguments());
String operatorInUse = invocation.getOperator();
if (operatorInUse != null && operatorInUse.equals(OPERATOR_OR)) {
Query.Junction disjunction = q.disjunction();
for (MethodExpression expression : invocation.getExpressions()) {
q.add(disjunction, expression.createCriterion());
}
}
else {
for (MethodExpression expression : invocation.getExpressions()) {
q.add( expression.createCriterion() );
}
}
q.projections().count();
return q;
}
}
代码示例来源:origin: org.grails/grails-datastore-core
@Override
public List query(Object primaryKey) {
Association inverseSide = association.getInverseSide();
Query query = session.createQuery(association.getAssociatedEntity().getJavaClass());
query.eq(inverseSide.getName(), primaryKey);
query.projections().id();
return query.list();
}
代码示例来源:origin: org.grails/grails-datastore-gorm
result = query.singleResult();
associationQuery = query.createQuery(property.getName());
if (associationQuery instanceof AssociationQuery) {
previousQuery.add((Query.Criterion) associationQuery);
代码示例来源:origin: org.grails/grails-datastore-core
query.eq(association.getInverseSide().getName(), obj)
.projections().id();
tmp = (Serializable) query.singleResult();
代码示例来源:origin: org.grails/grails-datastore-gorm
protected void applyAdditionalCriteria(Query query, Closure additionalCriteria) {
if (additionalCriteria == null) {
return;
}
CriteriaBuilder builder = new CriteriaBuilder(query.getEntity().getJavaClass(), query.getSession(), query);
builder.build(additionalCriteria);
}
}
代码示例来源:origin: org.grails/grails-datastore-gorm
public Object doInSession(final Session session) {
Query q = session.createQuery(clazz);
applyAdditionalCriteria(q, additionalCriteria);
boolean ascending = true;
if (arguments.length > 0 && (arguments[0] instanceof Map)) {
final Map args = new LinkedHashMap( (Map) arguments[0] );
final Object order = args.remove(DynamicFinder.ARGUMENT_ORDER);
if(order != null && "desc".equalsIgnoreCase(order.toString())) {
ascending = false;
}
DynamicFinder.populateArgumentsForCriteria(clazz, q, args);
}
q.order( ascending ? Query.Order.asc(propertyName) : Query.Order.desc(propertyName));
q.projections().distinct();
return invokeQuery(q);
}
});
代码示例来源:origin: org.grails/grails-datastore-gorm
Query query = preQueryEvent.getQuery();
PersistentEntity entity = query.getEntity();
if(entity.isMultiTenant()) {
if(datastore == null) {
currentId = Tenants.currentId(datastore.getClass());
query.eq(tenantId.getName(), currentId );
代码示例来源:origin: org.grails/grails-datastore-core
@Override
public Object clone() {
Session session = getSession();
if(session == null) throw new IllegalStateException("Cannot clone a stateless query");
Query newQuery = session.createQuery(entity.getJavaClass());
for (Criterion criterion : criteria.getCriteria()) {
newQuery.add(criterion);
}
return newQuery;
}
代码示例来源:origin: org.grails/grails-datastore-gorm
/**
* Defines and executes a list distinct query in a single call. Example: Foo.createCriteria.listDistinct { }
* @param callable The closure to execute
*
* @return The result list
*/
public List listDistinct(Closure callable) {
ensureQueryIsInitialized();
invokeClosureNode(callable);
query.projections().distinct();
return query.list();
}
代码示例来源:origin: org.grails/grails-datastore-gorm
protected Object invokeList() {
Object result;
result = query.list();
return result;
}
代码示例来源:origin: org.grails/grails-datastore-gorm
protected Query buildQuery(DynamicFinderInvocation invocation, Class<?> clazz, Query query) {
applyAdditionalCriteria(query, invocation.getCriteria());
applyDetachedCriteria(query, invocation.getDetachedCriteria());
configureQueryWithArguments(clazz, query, invocation.getArguments());
final String operatorInUse = invocation.getOperator();
if (operatorInUse != null && operatorInUse.equals(OPERATOR_OR)) {
if (firstExpressionIsRequiredBoolean()) {
MethodExpression expression = invocation.getExpressions().remove(0);
query.add(expression.createCriterion());
}
Query.Junction disjunction = query.disjunction();
for (MethodExpression expression : invocation.getExpressions()) {
query.add(disjunction, expression.createCriterion());
}
}
else {
for (MethodExpression expression : invocation.getExpressions()) {
query.add(expression.createCriterion());
}
}
return query;
}
代码示例来源:origin: org.grails/grails-datastore-gorm
@Override
public BuildableCriteria cache(boolean cache) {
query.cache(cache);
return this;
}
代码示例来源:origin: org.grails/grails-datastore-core
/**
* Creates a disjunction (OR) query
* @return The Junction instance
*/
public Junction disjunction() {
Junction currentJunction = criteria;
return disjunction(currentJunction);
}
代码示例来源:origin: org.grails/grails-datastore-core
public AbstractQueryEvent(Query query) {
super(query.getSession().getDatastore());
this.query = query;
}
内容来源于网络,如有侵权,请联系作者删除!