started restful mvc library getting framework ecosystem android elasticsearch spring-restdocs

restful - Cómo buscar a través de Json en búsqueda elástica usando spring resttemplate en android



spring library (2)

A diferencia de otras bases de datos relacionales, no necesita Spring RestTemplate para consultar la base de datos elástica. ElasticSearch viene con una biblioteca de API Java incorporada. Usas directamente esas funciones para crear tu consulta y obtener los resultados.

Pagar este enlace. Tiene la documentación sobre cómo usar la API.

Elastic Search API de Java 5.1

Hola, estoy tratando de buscar datos en búsqueda elástica usando SpringTemplate. ElasticSearch tiene nombre de usuario y contraseña, y quiero buscar a través de json.

Escribí el código para esto, pero no recibo ningún resultado o excepción. Estoy haciendo esto por primera vez en mi vida, lo siento mucho si hay algún error tonto.

@Override protected List<JobPosts> doInBackground(Object[] objects) { List list = null; try { SearchForm searchForms = (SearchForm) objects[0]; String plainCreds = "******:********"; final String url = "*******"; RestTemplate restTemplate = new RestTemplate(); restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter()); HttpEntity<String> request = new HttpEntity<>(searchJson, headers); Log.d("location", "before exchange"); ResponseEntity<JobPosts[]> response = restTemplate.exchange(url, HttpMethod.GET, request, JobPosts[].class); JobPosts[] jobPosts = response.getBody(); Log.d("location", "after exchange"); list = Arrays.asList(jobPosts); } catch (Exception e) { Log.d("location", e.getMessage()); }


Yo recomendaría Usar la API Java de ES tal como lo menciona Tanay.

Configura tu conexión como esta

//Create the ES clien org.elasticsearch.client.Client client; //Setup the connection. Make sure you use port 9300 and not 9200 here. client = new PreBuiltTransportClient(Settings.EMPTY) .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), "9300")); //Interact with your index, for example getting an object by its ID GetResponse response = client.prepareGet("index", "type", "id") .setOperationThreaded(false) .get(); //Close the connection client.close();