Springboot Mongodb findAll() 和 findbyId returns 空大括号

Springboot Mongodb findAll() and findbyId returns empty curly brackets

我有一个正在处理的应用程序,我将它连接到我的 mongoDB 数据库和所有内容,但是总是执行 findAll 或 findById 方法 returns 一个空括号 {}

我认为它“有效”,因为我的 mongodb 数据库中共有 5731 条记录,当执行“findAll()”时,它 returns 5731 条左括号。

我做了一些研究,发现了一些类似的帖子,但大多数人说要治愈我的 collection 是正确的(确实如此)。

这是我的自定义变量 class "stockIncome.java"

@Document(collection = "IncomeStatement")
public class stockIncome {
    
    @Id
    String id;

spring.data.mongodb.uri=mongodb+srv://XXX_XXX_XXX(Hiding my username/password/hostname)?retryWrites=true&w=majority

我的控制器文件

@RestController
public class stockController {

    public StockRepository stockRepository;

    public stockController(StockRepository stockRepository) {
        this.stockRepository = stockRepository; 
    }
    
    @GetMapping("/all")
    public List<stockIncome> findStocks(){  
        return stockRepository.findAll();
    }
    @GetMapping("/stocks/{id}")
    public Optional<stockIncome> findStock(@PathVariable final String id){
        return stockRepository.findById(id);
    }
}

和我的存储库

public interface StockRepository extends MongoRepository<stockIncome, String> {    
}

有什么想法可以帮我调试这个吗?

已修复!

解决方案是将 public 添加到我的变量构造函数中的 id。

已更改

string id public string id

现在它不再是空的了!