关于JSON数据类型
最后更新:2025-07-24 11:08:52
|
状态:未完成
以下需要打开ConfigTable.IS_AUTO_CHECK_METADATA = true;有效
如果属性是Entity或Lists<Entity>类型,数据库中是json类型,在执行插入或更新时会把属性转换成json(String)
相应的在从数据库中查询结果时,会把json类型转换成Entity或List<Entity>实例
【示例源码】
如果属性是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);
【示例源码】