ArcGIS Server按属性查询

 public void  query(TaskEvent event) {
  WebContext context=event.getWebContext();
     WebGraphics graphics=context.getWebGraphics();
     WebQuery query=context.getWebQuery();
   
     List searchLayer=new ArrayList();
     searchLayer.add("bird_xy");
   
     List layers = query.getQueryLayers();
     List<WebLayerInfo> queryLayer = new ArrayList<WebLayerInfo>();
     for(Iterator iterator=layers.iterator(); iterator.hasNext();){
         Object item = iterator.next();
         if(item instanceof WebLayerInfo){
              WebLayerInfo layerinfo = (WebLayerInfo)item;
              if(layerinfo.getName().equals("bird_xy")){  
                  queryLayer.add(layerinfo);
              }
         }
     }

     List<String> returnFields =new ArrayList<String>();
     returnFields.add("lat");   
     returnFields.add("lon");
   
     PredefinedQueryCriteria pqc=new PredefinedQueryCriteria();
     pqc.setWhereClause("lat='%"+this.keyWord+"%'");
     pqc.setDisplayFieldName("lat");
     pqc.setFetchResultDetails(true);
     pqc.setReturnFields(returnFields);
     List resultList = new ArrayList();
     resultList = query.query(pqc, queryLayer);
        
     if(resultList.size()!=0){
      for(int i=0;i<resultList.size();i++){
       QueryResult result = (QueryResult)resultList.get(i);
       result.highlight();
      }
     }
  
 }

posted @ 2010-05-22 10:52  xngeer  阅读(558)  评论(0编辑  收藏  举报