gpt4 book ai didi

java - Spring Data Elasticsearch 可以很好地保存数据,但使用 findAll 返回空数组

转载 作者:太空宇宙 更新时间:2023-11-04 09:56:50 26 4
gpt4 key购买 nike

我使用 Springboot 制作了一个应用程序并在后台运行 Elasticsearch,一切正常,当我通过传递一些 json 数据来保存数据时,它返回正确的结果(插入数据的数量),但是当我尝试获取数据时,它返回空数组符号。

不明白发生了什么,请任何人帮忙。

我已附上我的 postman 请求的屏幕截图。

用于保存数据 For Saving data

用于获取数据 For Fetching data

我的 API 类:-

@SpringBootApplication
@RestController
public class SpringBootElasticserachExampleApplication {

@Autowired
private HeroRepository repository;

@PostMapping("/saveHero")
public int saveCustomer(@RequestBody List<Hero> heros) {

repository.saveAll(heros);
return heros.size();
}

@GetMapping("/findAll")
public Iterable<Hero> findAllHeros() {

return repository.findAll();
}
}

模型类:

@Document(indexName="movie",type="hero",shards=2)
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Hero {

@Id
private String id;
private String firstname;
private String lastname;
private int age;

}

存储库:

public interface HeroRepository extends ElasticsearchRepository<Hero, String>{

List<Hero> findByFirstname(String firstName);

}

最佳答案

这是一个 Bean 创建问题,Lombok 在这里无法正常工作。

我通过添加手动 Getter Setter 解决了这个问题。

关于java - Spring Data Elasticsearch 可以很好地保存数据,但使用 findAll 返回空数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54039375/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com