org.eclipse.persistence.jpa.jpql.parser.WhereClause类的使用及代码示例

x33g5p2x  于2022-02-03 转载在 其他  
字(9.3k)|赞(0)|评价(0)|浏览(177)

本文整理了Java中org.eclipse.persistence.jpa.jpql.parser.WhereClause类的一些代码示例,展示了WhereClause类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。WhereClause类的具体详情如下:
包路径:org.eclipse.persistence.jpa.jpql.parser.WhereClause
类名称:WhereClause

WhereClause介绍

[英]The WHERE clause of a query consists of a conditional expression used to select objects or values that satisfy the expression. The WHERE clause restricts the result of a select statement or the scope of an update or delete operation.

BNF:where_clause ::= WHERE conditional_expression
[中]查询的WHERE子句由一个条件表达式组成,用于选择满足该表达式的对象或值。WHERE子句限制select语句的结果或update或delete操作的范围。
BNF:where_clause ::= WHERE conditional_expression

代码示例

代码示例来源:origin: Impetus/Kundera

  1. /**
  2. * Sets the filters from where clause.
  3. *
  4. * @param query
  5. * the query
  6. * @param m
  7. * the m
  8. * @param useLuceneOrES
  9. * the use lucene or es
  10. * @return the filters from where clause
  11. */
  12. private Filter getFiltersFromWhereClause(KunderaQuery query, EntityMetadata m, Boolean useLuceneOrES)
  13. {
  14. String idColumn = ((AbstractAttribute) m.getIdAttribute()).getJPAColumnName();
  15. WhereClause whereClause = KunderaQueryUtils.getWhereClause(query.getJpqlExpression());
  16. if (whereClause != null)
  17. {
  18. this.isWhereOrAggregation = true;
  19. if (!useLuceneOrES)
  20. return traverse(whereClause.getConditionalExpression(), m, idColumn);
  21. }
  22. return null;
  23. }

代码示例来源:origin: stackoverflow.com

  1. WhereClause whereClause = new WhereClause();
  2. if(!(txt_billing2.getText().trim().isEmpty())) {
  3. whereClause.addParameter("BILLING", txt_billing2.getText().trim());
  4. }
  5. ...
  6. if(!(txt_umonth2.getText().trim().isEmpty())) {
  7. whereClause.addParameter("UMONTH ", txt_umonth2.getText().trim());
  8. }
  9. String sql = "SELECT * FROM airindia_sqlite" + whereClause.getWhereClause();
  10. ps = con.prepareStatement(sql);
  11. Map<Integer, Object> parameters = whereClause.getParameters();
  12. for (Integer key : parameters.keySet()) {
  13. ps.setObject(key, parameters.get(key));
  14. }
  15. rs = ps.executeQuery();

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.jpa.jpql

  1. /**
  2. * {@inheritDoc}
  3. */
  4. public JPQLQueryBNF getQueryBNF() {
  5. return getQueryBNF(WhereClauseBNF.ID);
  6. }
  7. }

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.jpa.jpql

  1. /**
  2. * {@inheritDoc}
  3. */
  4. @Override
  5. public void visit(WhereClause expression) {
  6. if (expression.hasConditionalExpression()) {
  7. conditionalExpression = true;
  8. expression.getConditionalExpression().accept(this);
  9. conditionalExpression = false;
  10. }
  11. }
  12. }

代码示例来源:origin: com.haulmont.thirdparty/eclipselink

  1. /**
  2. * {@inheritDoc}
  3. */
  4. @Override
  5. protected AbstractExpression buildExpression(AbstractExpression parent,
  6. WordParser wordParser,
  7. String word,
  8. JPQLQueryBNF queryBNF,
  9. AbstractExpression expression,
  10. boolean tolerant) {
  11. expression = new WhereClause(parent);
  12. expression.parse(wordParser, tolerant);
  13. return expression;
  14. }
  15. }

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.jpa.jpql

  1. /**
  2. * {@inheritDoc}
  3. */
  4. @Override
  5. public void visit(WhereClauseStateObject stateObject) {
  6. if (stateObject.isDecorated()) {
  7. toText(stateObject);
  8. }
  9. else {
  10. WhereClause expression = stateObject.getExpression();
  11. // 'WHERE
  12. appendIdentifier((expression != null) ? expression.getActualIdentifier() : WHERE, WHERE);
  13. if (exactMatch && (expression != null) && expression.hasSpaceAfterIdentifier() ||
  14. stateObject.hasConditional()) {
  15. writer.append(SPACE);
  16. }
  17. // Conditional expression
  18. if (stateObject.hasConditional()) {
  19. stateObject.getConditional().accept(this);
  20. }
  21. }
  22. }
  23. }

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.jpa.jpql

  1. /**
  2. * {@inheritDoc}
  3. */
  4. @Override
  5. protected AbstractExpression buildExpression(AbstractExpression parent,
  6. WordParser wordParser,
  7. String word,
  8. JPQLQueryBNF queryBNF,
  9. AbstractExpression expression,
  10. boolean tolerant) {
  11. expression = new WhereClause(parent);
  12. expression.parse(wordParser, tolerant);
  13. return expression;
  14. }
  15. }

代码示例来源:origin: Impetus/Kundera

  1. /**
  2. * Inits the filter.
  3. */
  4. private void initFilter() {
  5. EntityMetadata metadata = KunderaMetadataManager.getEntityMetadata(kunderaMetadata, entityClass);
  6. Metamodel metaModel = kunderaMetadata.getApplicationMetadata().getMetamodel(getPersistenceUnit());
  7. EntityType entityType = metaModel.entity(entityClass);
  8. if (null == filter) {
  9. List<String> clauses = new ArrayList<String>();
  10. addDiscriminatorClause(clauses, entityType);
  11. return;
  12. }
  13. WhereClause whereClause = KunderaQueryUtils.getWhereClause(getJpqlExpression());
  14. KunderaQueryUtils.traverse(whereClause.getConditionalExpression(), metadata, kunderaMetadata, this, false);
  15. for (Object filterClause : filtersQueue) {
  16. if (!(filterClause instanceof String)) {
  17. onTypedParameter(((FilterClause) filterClause));
  18. }
  19. }
  20. addDiscriminatorClause(null, entityType);
  21. }

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.jpa.jpql

  1. /**
  2. * {@inheritDoc}
  3. */
  4. @Override
  5. protected void parse(WordParser wordParser, boolean tolerant) {
  6. // Parse 'DELETE FROM'
  7. deleteClause = new DeleteClause(this);
  8. deleteClause.parse(wordParser, tolerant);
  9. hasSpace = wordParser.skipLeadingWhitespace() > 0;
  10. // Parse 'WHERE'
  11. if (wordParser.startsWithIdentifier(WHERE)) {
  12. whereClause = new WhereClause(this);
  13. whereClause.parse(wordParser, tolerant);
  14. }
  15. // Now fully qualify attribute names with a virtual identification variable
  16. accept(new FullyQualifyPathExpressionVisitor());
  17. }

代码示例来源:origin: com.haulmont.thirdparty/eclipselink

  1. /**
  2. * {@inheritDoc}
  3. */
  4. public JPQLQueryBNF getQueryBNF() {
  5. return getQueryBNF(WhereClauseBNF.ID);
  6. }
  7. }

代码示例来源:origin: Impetus/Kundera

  1. @Override
  2. protected List<Object> populateEntities(EntityMetadata m, Client client)
  3. {
  4. MetamodelImpl metaModel = (MetamodelImpl) kunderaMetadata.getApplicationMetadata().getMetamodel(
  5. m.getPersistenceUnit());
  6. EntityType entity = metaModel.entity(m.getEntityClazz());
  7. Expression whereExpression = KunderaQueryUtils.getWhereClause(kunderaQuery.getJpqlExpression());
  8. QueryBuilder filter = whereExpression == null || whereExpression instanceof NullExpression ? null
  9. : esFilterBuilder.populateFilterBuilder(((WhereClause) whereExpression).getConditionalExpression(), m);
  10. return ((ESClient) client).executeQuery(filter, buildAggregation(kunderaQuery, m, filter), m,
  11. getKunderaQuery(),this.firstResult, this.maxResult);
  12. }

代码示例来源:origin: com.haulmont.thirdparty/eclipselink

  1. /**
  2. * {@inheritDoc}
  3. */
  4. @Override
  5. protected void parse(WordParser wordParser, boolean tolerant) {
  6. // Parse 'UPDATE'
  7. updateClause = new UpdateClause(this);
  8. updateClause.parse(wordParser, tolerant);
  9. hasSpaceAfterUpdateClause = wordParser.skipLeadingWhitespace() > 0;
  10. // Parse 'WHERE'
  11. if (wordParser.startsWithIdentifier(WHERE)) {
  12. whereClause = new WhereClause(this);
  13. whereClause.parse(wordParser, tolerant);
  14. }
  15. // Now fully qualify attribute names with a virtual identification variable
  16. accept(new FullyQualifyPathExpressionVisitor());
  17. }

代码示例来源:origin: Impetus/Kundera

  1. /**
  2. * Compile where.
  3. */
  4. private void compileWhere()
  5. {
  6. WhereClause whereClause = null;
  7. if (query.isSelectStatement())
  8. {
  9. whereClause = (WhereClause) query.getSelectStatement().getWhereClause();
  10. }
  11. else if (query.isUpdateStatement())
  12. {
  13. whereClause = (WhereClause) query.getUpdateStatement().getWhereClause();
  14. }
  15. if (query.isDeleteStatement())
  16. {
  17. whereClause = (WhereClause) query.getDeleteStatement().getWhereClause();
  18. }
  19. String content = whereClause.getConditionalExpression().toActualText();
  20. if (whereClause != null && content.length() == 0)
  21. {
  22. throw new JPQLParseException("keyword without value[WHERE]");
  23. }
  24. query.setFilter(content);
  25. }

代码示例来源:origin: com.haulmont.thirdparty/eclipselink

  1. /**
  2. * {@inheritDoc}
  3. */
  4. @Override
  5. protected void parse(WordParser wordParser, boolean tolerant) {
  6. // Parse 'DELETE FROM'
  7. deleteClause = new DeleteClause(this);
  8. deleteClause.parse(wordParser, tolerant);
  9. hasSpace = wordParser.skipLeadingWhitespace() > 0;
  10. // Parse 'WHERE'
  11. if (wordParser.startsWithIdentifier(WHERE)) {
  12. whereClause = new WhereClause(this);
  13. whereClause.parse(wordParser, tolerant);
  14. }
  15. // Now fully qualify attribute names with a virtual identification variable
  16. accept(new FullyQualifyPathExpressionVisitor());
  17. }

代码示例来源:origin: Impetus/Kundera

  1. @Override
  2. public Map<String, Object> search(KunderaMetadata kunderaMetadata, KunderaQuery kunderaQuery,
  3. PersistenceDelegator persistenceDelegator, EntityMetadata m, int firstResult, int maxResults)
  4. {
  5. ESQuery query = new ESQuery<>(kunderaQuery, persistenceDelegator, kunderaMetadata);
  6. MetamodelImpl metaModel = (MetamodelImpl) kunderaMetadata.getApplicationMetadata()
  7. .getMetamodel(m.getPersistenceUnit());
  8. Expression whereExpression = KunderaQueryUtils.getWhereClause(kunderaQuery.getJpqlExpression());
  9. QueryBuilder filter = whereExpression != null ? query.getEsFilterBuilder()
  10. .populateFilterBuilder(((WhereClause) whereExpression).getConditionalExpression(), m) : null;
  11. FilteredQueryBuilder queryBuilder = QueryBuilders.filteredQuery(null, filter);
  12. SearchResponse response = getSearchResponse(kunderaQuery, queryBuilder, filter, query, m, firstResult,
  13. maxResults, kunderaMetadata);
  14. return buildResultMap(response, kunderaQuery, m, metaModel);
  15. }

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.jpa.jpql

  1. /**
  2. * {@inheritDoc}
  3. */
  4. @Override
  5. protected void parse(WordParser wordParser, boolean tolerant) {
  6. // Parse 'UPDATE'
  7. updateClause = new UpdateClause(this);
  8. updateClause.parse(wordParser, tolerant);
  9. hasSpaceAfterUpdateClause = wordParser.skipLeadingWhitespace() > 0;
  10. // Parse 'WHERE'
  11. if (wordParser.startsWithIdentifier(WHERE)) {
  12. whereClause = new WhereClause(this);
  13. whereClause.parse(wordParser, tolerant);
  14. }
  15. // Now fully qualify attribute names with a virtual identification variable
  16. accept(new FullyQualifyPathExpressionVisitor());
  17. }

代码示例来源:origin: Impetus/Kundera

  1. Expression whereExp = whereClause.getConditionalExpression();

代码示例来源:origin: com.haulmont.thirdparty/eclipselink

  1. whereClause = new WhereClause(this);
  2. whereClause.parse(wordParser, tolerant);

代码示例来源:origin: Impetus/Kundera

  1. Expression whereExp = whereClause.getConditionalExpression();
  2. parseAndBuildFilters(entityType, scannerBuilder, whereExp);

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.jpa.jpql

  1. whereClause = new WhereClause(this);
  2. whereClause.parse(wordParser, tolerant);

相关文章