天天看點

ES插入更新操作

ES插入更新操作

public static String SaveToES(HashMap<String,String> map) throws Exception{
		
		Index idx = new Index.Builder(map).index(IndexName).type(TypeDirdecName).id((String)map.get("feedId")).build();
		JestClient client = EsFactory.getClient(Server);
		idx.addHeader(EsFactory.ES_SCE_HEADER,
				EsFactory.getSceEsHeader(Passpord));
		JestResult result = client.execute(idx);
		return result.getJsonString();
	}
	
	public static void getFromES(String param,int feedType) throws Exception{
		String type=null;
		if(feedType==2||feedType==14){
			type=TypeName;
		}
		else {
			type=TypeDirdecName;
		}
		long start = System.currentTimeMillis();
        QueryBuilder queryBuilder = QueryBuilders.queryString(param);  
        Search search = new Search(Search.createQueryWithBuilder(queryBuilder.toString()));  
        search.addIndex(IndexName);  
        search.addType(type);
        search.addParameter("from", 0);
        search.addParameter("size", 1000);
        search.addHeader(EsFactory.ES_SCE_HEADER,
				EsFactory.getSceEsHeader(Passpord));
        JestResult result = EsFactory.getClient(Server)
				.execute(search);
        long end = System.currentTimeMillis();  
        result.getJsonString();
        List<Map> list = result.getSourceAsObjectList(Map.class);
       for(Map ma:list){
    	   System.out.println(ma);
       }
	}
	public static void delData(String id,int feedType) throws Exception{
		String type=null;
		if(feedType==2||feedType==14){
			type=TypeName;
		}
		else {
			type=TypeDirdecName;
		}
		Delete d = new Delete.Builder(id).index(IndexName).type(type).build();
        d.addHeader(EsFactory.ES_SCE_HEADER,EsFactory.getSceEsHeader(Passpord));
        JestResult result = EsFactory.getClient(Server).execute(d);
        
        System.out.println(result.getJsonString());
	}
	
	public static  void updateUser(HashMap<String,String> ma) throws Exception {
	//System.out.println(ma);
		Update u = new Update.Builder(ma).index(IndexName)
				.type(TypeName).id(ma.get("feed_id")).build();
		u.addHeader(EsFactory.ES_SCE_HEADER,
				EsFactory.getSceEsHeader(Passpord));
		JestResult result=EsFactory.getClient(Server).execute(u); 
		
		System.out.println(result.getJsonString());
	}
           

繼續閱讀