_class定义了每一条数据映射的实体类的类型,在使用SpringBoot-MongoDB的api插入数据时,即使引用类型是父类型,_class的值会插入对象的实际类型。

    @PutMapping(value = "/insert/{collectionName}")
    public ResponseMessage insert(@RequestBody JSONObject json,
                                  @PathVariable("collectionName") String collectionName) {

        try {
            // 获取Class对象
            Class oo = Class.forName("com.adc.da.forecast.entity." + collectionName);
            Object o = JSON.parseObject(JSON.toJSONString(json), oo);
	    // 插入数据之后,_class的类型是对象实际类型
            dataManagentService.insert(collectionName, o);
            return Result.success();
        } catch (Exception e) {
            e.printStackTrace();
            return Result.error();
        }
    }
06-29 21:54