【发布时间】:2021-07-16 09:35:10
【问题描述】:
我有一个带有 MongoDB 连接的 Spring Boot 应用程序。在使用带有@Document(Collection = "CompanyDetails") 的 POJO/Model 类时,它在“POSTMAPPING”之后成功地在 MongoDB 中创建了集合,并且结果按预期进入了 CompanyDetails 集合中。
我使用了控制器、服务、存储库,并且使用了存储库括号中的 Map
控制器:
@PostMapping("/addRecords")
public Map<String, Object> addCompanyDetails(@RequestBody Map<String, Object> companyDetails) {
return companyDetailsService.addCompanyDetails(companyDetails);
}
服务:
@Service
public class CompanyDetailsService {
@Autowired
CompanyDetailsRepository companyDetailsRepository;
public Map<String, Object> addCompanyDetails(Map<String, Object> companyDetails) {
return companyDetailsRepository.insert(companyDetails);
}
}
存储库:
@Repository
public interface CompanyDetailsRepository extends MongoRepository<Map<String, Object>, String> {}
我的要求是创建一个没有 POJO 类的集合。因为,字段不固定(插入记录时)。所以,我不能在 POJO 类中声明字段并生成 getter setter。
由于我没有使用 POJO 类,所以当我发布记录时,它会创建一个名为“map”的集合并在其中插入记录。 但是,预期是在其中创建“CompanyDetails”集合并存储数据。
【问题讨论】:
标签: java spring mongodb spring-boot pojo