spring - Elasticsearch 返回空的 json 对象

标签 spring spring-boot elasticsearch spring-data logstash

我刚刚开始使用 elasticsearch with spring,这两种技术对我来说都是全新的。我已经使用 logstash 将数据上传到 elasticseach 索引,我可以使用 kebana 成功搜索它。但是,当我尝试使用 spring 从索引返回到网页时,它只返回空的 json 对象,但返回适量的空对象。是我上传的数据不正确还是我的代码有问题?我不明白为什么会这样,如果能得到任何帮助,我将不胜感激。您可以在下面找到一些代码。

类型代码:

@Document(indexName="usmgbg_index", type="usmgbg_type")
public class Usmgbg {

    @Id
    private String ID;
    private String Source, Name, Profession, Country, FileName, LastModified, OwnerID;
}

存储库:

@Repository 
public interface UsmgbgRepository extends ElasticsearchRepository<Usmgbg, String>{}

Controller :

@RestController
public class UsmgbgController {
    @Autowired
    private UsmgbgRepository repository;
    
    @GetMapping("usmgbg/findall")
    public List<Usmgbg> findAllCustomers() {

        List<Usmgbg> items = new ArrayList<>();
        repository.findAll().forEach(items::add);
      
        return items;
    } 
}

我从 findAllCustomers 得到的输出看起来像:

[{},{},{},{},....]

最佳答案

我意识到这是一个老问题,但我遇到了同样的问题(可能出于不同的原因),我通过在模型中添加 getter 和 setter 解决了这个问题。

关于spring - Elasticsearch 返回空的 json 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58919632/

相关文章:

java - Drools 规则在 Spring Boot Controller 中不起作用,但在 Junit Test 中起作用

python - 如何从python对elasticsearch进行批量索引

elasticsearch - 一个索引的 Elasticsearch 中的多个映射

java - 在生产环境中加载 index.jsp 时出错,但在开发环境中不会

java - 无法解析名称错误的 View Spring MVC 4 + Apache Tiles 3

java - 处理来自 WebSocket 消息的 MethodArgumentNotValidException

java - 获取某个日期范围内的记录

elasticsearch - elasticsearch中的完全匹配查询

java - 如何在 Spring 使用@NamedQuery CrudRepository @Query?

java - 如何更改对应@NotNull注解返回的响应JSON