关于JSON数据类型

最后更新:2023-10-18 20:17:02 | 状态:未完成
以下需要打开ConfigTable.IS_AUTO_CHECK_METADATA = true;有效
如果属性是Entity或Lists<Entity>类型,数据库中是json类型,在执行插入或更新时会把属性转换成json(String)
相应的在从数据库中查询结果时,会把json类型转换成Entity或List<Entity>实例
        Employee employee = ServiceProxy.select(Employee.class);
        //employee的department属性是Department类型
        //这里会输出{"id":1,"name":"张三","department":{"code":"A1","name":"财务部"}, "departments":[{"code":"A1","name":"财务部"}]}
        System.out.println(BeanUtil.object2json(employee));
        Department dept = new Department();
        dept.setCode("A1");
        dept.setName("财务部");
        employee.setName("张三");
        //属性是entity类型的 数据是json类型
        employee.setDepartment(dept);
        //这里会执行SQL UPDATE hr_employee SET department ={"code":"A1","name":"财务部"}(java.lang.String)
        ServiceProxy.save(employee);

        //DataRow 与Entity效果类似
        DataRow emp = ServiceProxy.query("hr_employee");
        emp.put("department", dept);
        //也可以通过String类型的json赋值
        emp.put("department", BeanUtil.object2json(dept));
        System.out.println(emp.toJSON());
        service.save(emp);

示例源码
最近更新 搜索 提交