1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          Java SortExpression類使用實例

          來源:互聯網轉載 時間:2024-01-29 07:45:43

          實例1: buildSortOptions

          import com.google.appengine.api.search.SortExpression; //導入依賴的package包/類protected SortOptions.Builder buildSortOptions(List<OrderComponent> order) {    SortOptions.Builder sortOptions = SortOptions.newBuilder();    for (OrderComponent sort : order) {        String fieldName = getEncodedFieldName(sort.getField());        SortExpression.Builder expression = SortExpression.newBuilder().setExpression(fieldName);        expression = expression.setDirection(sort.isAscending() ? SortExpression.SortDirection.ASCENDING : SortExpression.SortDirection.DESCENDING);        IndexType indexType = metadata.getIndexType(sort.getField());        if (IndexType.SmallDecimal == indexType || IndexType.BigDecimal == indexType) {            expression = expression.setDefaultValueNumeric(sort.isDescending() ? IntLow : IntHigh);        } else if (IndexType.Date == indexType) {            expression = expression.setDefaultValueDate(sort.isDescending() ? DateLow : DateHigh);        } else {            expression = expression.setDefaultValue(sort.isDescending() ? StringLow : StringHigh);        }        sortOptions = sortOptions.addSortExpression(expression);    }    return sortOptions;} 

          實例2: apply

          import com.google.appengine.api.search.SortExpression; //導入依賴的package包/類@Overridepublic SortOptions apply(Query<?> query) {    SortOptions.Builder sortOptions = SortOptions.newBuilder();    query.getSort().ifPresent(sort -> {        for (Order order : sort) {            SearchFieldMetadata searchFieldMetadata = searchMetadata.getField(query.getResultType(), order.getProperty());            SortExpression.Builder expression = SortExpression.newBuilder()                    .setExpression(searchFieldMetadata.getEncodedName())                    .setDirection(order.getDirection().isAscending() ? ASCENDING : DESCENDING);            applyDefaultValue(order, searchFieldMetadata.getIndexType(), expression);            sortOptions.addSortExpression(expression.build());        }    });    return sortOptions.build();} 

          實例3: applyDefaultValue

          import com.google.appengine.api.search.SortExpression; //導入依賴的package包/類private void applyDefaultValue(Order order, IndexType indexType, SortExpression.Builder expression) {    if (indexType == NUMBER) {        expression.setDefaultValueNumeric(order.isAscending() ? MAXIMUM_NUMBER_VALUE : MINIMUM_NUMBER_VALUE);    } else if (indexType == DATE) {        expression.setDefaultValueDate(order.isAscending() ? MAXIMUM_DATE_VALUE : MINIMUM_DATE_VALUE);    } else {        expression.setDefaultValue(order.isAscending() ? HIGH_STRING_CHAR : "");    }} 

          實例4: doSearch

          import com.google.appengine.api.search.SortExpression; //導入依賴的package包/類private Results<ScoredDocument> doSearch() {  String indexName = SEARCH_INDEX;  // [START search_with_options]  try {    // Build the SortOptions with 2 sort keys    SortOptions sortOptions = SortOptions.newBuilder()        .addSortExpression(SortExpression.newBuilder()            .setExpression("price")            .setDirection(SortExpression.SortDirection.DESCENDING)            .setDefaultValueNumeric(0))        .addSortExpression(SortExpression.newBuilder()            .setExpression("brand")            .setDirection(SortExpression.SortDirection.DESCENDING)            .setDefaultValue(""))        .setLimit(1000)        .build();    // Build the QueryOptions    QueryOptions options = QueryOptions.newBuilder()        .setLimit(25)        .setFieldsToReturn("model", "price", "description")        .setSortOptions(sortOptions)        .build();    // A query string    String queryString = "product: coffee roaster AND price < 500";    //  Build the Query and run the search    Query query = Query.newBuilder().setOptions(options).build(queryString);    IndexSpec indexSpec = IndexSpec.newBuilder().setName(indexName).build();    Index index = SearchServiceFactory.getSearchService().getIndex(indexSpec);    Results<ScoredDocument> result = index.search(query);    return result;  } catch (SearchException e) {    // handle exception...  }  // [END search_with_options]  return null;} 

          實例5: testSortOptions

          import com.google.appengine.api.search.SortExpression; //導入依賴的package包/類@Testpublic void testSortOptions() {    for (SortExpression.SortDirection direction : SortExpression.SortDirection.values()) {        SortExpression sortExpression = SortExpression.newBuilder()            .setExpression("numfield")            .setDirection(direction)            .setDefaultValueNumeric(9999)            .build();        SortOptions sortOptions = SortOptions.newBuilder()            .addSortExpression(sortExpression)            .build();        QueryOptions options = QueryOptions.newBuilder()            .setFieldsToReturn("numfield", "datefield")            .setSortOptions(sortOptions)            .build();        Query.Builder queryBuilder = Query.newBuilder().setOptions(options);        Results<ScoredDocument> results = index.search(queryBuilder.build(""));        double pre = -9999;        if (direction.equals(SortExpression.SortDirection.DESCENDING)) {            pre = 9999;        }        for (ScoredDocument doc : results) {            assertEquals(2, doc.getFieldNames().size());            for (Field numField : doc.getFields("numfield")) {                if (direction.equals(SortExpression.SortDirection.DESCENDING)) {                    assertTrue(pre > numField.getNumber());                } else {                    assertTrue(pre < numField.getNumber());                }                pre = numField.getNumber();            }        }    }} 
          標簽:sortexpression-
          上一篇:ListView

          網絡推廣與網站優化公司(網絡優化與推廣專家)作為數字營銷領域的核心服務提供方,其價值在于通過技術手段與策略規劃幫助企業提升線上曝光度、用戶轉化率及品牌影響力。這...

          在當今數字化時代,公司網站已成為企業展示形象、傳遞信息和開展業務的重要平臺。然而,對于許多公司來說,網站建設的價格是一個關鍵考量因素。本文將圍繞“公司網站建設價...

          在當今的數字化時代,企業網站已成為企業展示形象、吸引客戶和開展業務的重要平臺。然而,對于許多中小企業來說,高昂的網站建設費用可能會成為其發展的瓶頸。幸運的是,隨...

          阿里dns114dns哪個好?阿里DNS:服務器地址:223.5.5.5 和 223.6.6.6 它的特點是穩定,快速,智能。114DNS:服務器地址:114.114.114.114 它的特點是高速,穩定,可靠,無劫持??茨枰?。首選dns和備用dns是什么?首選DNS和備用DNS都是一種域名系統,在首選DNS正常的情況下,就用首選DNS地址。當首選DNS服務器出現問題的時候,那么系統會自動啟用...

          碧歐泉護膚品效果怎么樣?碧歐泉護膚品效果不錯。碧歐泉是歐萊雅集團旗下的高級護膚品牌。其所有產品都含有獨特的礦泉活細胞因子生命浮游生物?活精,這也是他們的核心組成部分。碧歐泉補水很好,性價比還是很高的。歐碧泉好用嗎?蘭蔻的護膚品都是針對中年人的皮膚問題,適合年輕人的卻很少。但是,你可以放心使用他的化妝品。顏色時尚而輕盈,尤其是高睫毛絕對是NO1。全球首款高睫毛由蘭蔻生產。我們同歲。試過很多化妝品,我...

          可以播放RMVB的手機播放器?接受手機端播放mp3rmvb格式文件的播放器大體有:暴風影音、百度影音、moboplayer、RockPlayer等等。就像比較比較就是喜歡的是RockPlayer。哪款品牌手機能播放RM格式的歌曲?很歉疚的告訴你,這個問題大部分很不太好辦到。更不用說手機,連現在絕大多數的PMP播放器,基本是都不支持什么rm或rmvb的格式。幫我推薦:在用相關轉換成軟件,轉換成成意見...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>