1 前言
在Java开发读取数据的时候,一般都采用ORM方式将数据表的字段映射到实体对象中。
数据表中有一个字段,实体对象就有一个字段。
但很多时候,我们在读取的数据和显示的数据不同,比如,读取的是部门id,显示的数据部门名称。
传统采用Mybatis进行数据操作的时候,一般都采用冗余字段来解决,冗余出来的字段并不映射到数据表的字段中,仅仅用于数据展示。
EOS的数据实体支持“在运行时动态增加Property”,基于这个特性,可以在运行时手动添加字段。
2 设置数据实体,允许“在运行时动态增加Property”
在高开IDE中,编辑数据实体,勾选在运行时动态增加Property
双击进行编辑
3 测试SDO动态添加字段
TUserDevops dd2 = userDevopsService.getByAfcUserId(afcUserId);if(dd2 != null){dd2.set("afcUserName","张无忌");return Result.create(0,"success",dd2);}else{return Result.create(2,"未能获得UserDevops信息。",null);}
上面的例子,service层读取到了TUserDevops对象,我随便命名的dd2。
如果 dd2不是空的话,执行 dd2.set("afcUserName","张无忌")
这里的afcUserName是不存在的,执行后调用接口,可以看到返回的数据已经多了一个字段afcUserName ,值为张无忌。