# XML说明
在开发的过程当中,后端数据对象需要处理再传给前端,前端数据对象也需要处理再传给后端,这里往往需要建立不同数据对象来进行数据的转换处理。
正式因为这种情况的存在,Hub-Link
采用XML的方式来集中配置,
说明
每个controller.java都会对应一个controller.xml,比如SysUserController.java对应一个SysUserController.xml。
# XML元素
XML中有5个元素,分别是controller、grid、col、collection、search
元素等级
————controller
————————grid
————————————col
————————————collection
———————————————col
————————search
————————————col
# XML元素属性
元素中controller、grid、search中只有一个属性name。
元素中collection属性name、mapper。
元素grid下元素col的属性
prefix, // name的前缀, 如:prefix = sysUser, name = nm, 输出就是 sysUserNm
name, // mapper对应的key,输出key
mapper, // 对象.属性 如:sysUserVo.username
type, // 通过解析对象属性,反射生成列
typeObj, // 实体对象名称
descr, // 列描述
viewOrder, // 列排序,如果写,默认按顺序排序,如果解析类对象,按照英文首字母排序
handler, // 处理器,多个处理器用分号(";")隔开
toName, // 如果通过处理器想生成另一个map属性
toDescr, // 如果通过处理器想生成另一个map属性描述
enCls, // 枚举类
- 元素search下col元素的属性
name, // 查询的key
mapper, // 表名.字段 如:t_sys_user.username
type, // 通过解析对象属性,反射生成列
descr, // 列描述
# XML例子
<controller name="SysUserController">
<grid name="INFO">
<col type="yui.bss.sys.vo.SysUserVo" />
</grid>
<grid name="EXPT0">
<col name="username" mapper="sysUserVo.username" descr="登录名" />
<col name="email" mapper="sysUserVo.email" descr="邮件" />
<col name="type" mapper="sysUserVo.type" descr="类型"
handler="enCls(yui.bss.sys.en.SysUserEn.Type, false)"/>
<col name="rmks" mapper="sysUserVo.rmks" descr="备注" />
</grid>
<grid name="EXPT">
<col name="username" mapper="sysUserVo.username" descr="登录名" />
<col name="email" mapper="sysUserVo.email" descr="邮件" />
<col name="type" mapper="sysUserVo.type" descr="类型"
enCls="yui.bss.sys.en.SysUserEn.Type|false"/>
<col name="rmks" mapper="sysUserVo.rmks" descr="备注" />
</grid>
<grid name="IMPT">
<col name="username" mapper="sysUserVo.username" descr="登录名" />
<col name="email" mapper="sysUserVo.email" descr="邮件" />
<col name="type" mapper="sysUserVo.type" descr="类型"
enCls="yui.bss.sys.en.SysUserEn.Type"/>
<col name="rmks" mapper="sysUserVo.rmks" descr="备注" />
</grid>
<grid name="IMPT_ERR">
<grid name="IMPT" />
<col name="ie" mapper="sysUserVo.ie" descr="错误信息" />
</grid>
<search name="QUERY">
<col type="yui.bss.sys.vo.SysUserVo" />
</search>
<grid name="GRID">
<col name="username" mapper="sysUserVo.username" descr="登录名" />
<col name="email" mapper="sysUserVo.email" descr="邮件" />
<col name="type" mapper="sysUserVo.type" descr="类型" />
<col name="rmks" mapper="sysUserVo.rmks" descr="备注" />
</grid>
<search name="SEARCH">
<col name="username" mapper="t_sys_user.username" />
<col name="email" mapper="t_sys_user.email" />
<col name="type" mapper="t_sys_user.type" />
<col name="rmks" mapper="t_sys_user.rmks" />
</search>
</controller>
说明
通过XML对返回SysUserDto结果进行解析输出。
grid中可以包含其他grid,即继承关系。
col支持两种模式。一:通过对实体类进行解析,二:通过定制配置。
枚举类处理器,定制配置可以通过下面三种形式
handler="enCls(yui.bss.sys.en.SysUserEn.Type, false)" 只输出描述
enCls="yui.bss.sys.en.SysUserEn.Type|false" 只输出描述
enCls="yui.bss.sys.en.SysUserEn.Type" 输出值和描述
赞助商