java自定义表单系统_java自定义表单

d40570a4f2ac9166485f9186d556e65d.png

表单(页面)自定义(webwork+spring+hibernate)

(1)采用一个页面解析引擎,通过查找界面元素定义表(这个表后面有定义,也可以是xml定义),获得

对应页面的元素信息,采用xslt来生成html界面。

上面提到的数据表(或者xml文件)用来管理页面元素和对应的数据表结构字段信息以及页面元素的表现

控件类型。

比如:

表单名       数据表名           列标实                 列名称                 数据类型             页面控件           数据来源

----------------------------------------------------------------------------------------

VendorA     TBL_Vendor     cVenCode           供应商编号               字符串                   Text                     无

VendorA     TBL_Vendor     cVenName           供应商名称               字符串                   Text                     无

VendorA     TBL_Vendor     bDist                 地区性                       布尔值                   CheckBox             无

CustomQ     TBL_Custom     cCusCode           客户名称                   字符串                   Option                 ***.jsp

另外还需要一张数据内容管理的表

比如:

表单名       数据表名         文档标实           列标实                 值

---------------------------------------------------------

VendorA     TBL_Vendor       docA                 cVenCode             001

VendorA     TBL_Vendor       docA                 cVenName             中国移动

VendorA     TBL_Vendor       docA                 bDist                   true

CustomQ     TBL_Custom       docQ                 cCusCode             中国联通

这样的一种方法,会带来数据后台的管理非常的困难,因为本来字段级的数据变成了记录级,DBA的管理

会非常困难,数据重用性大大降低,多字段更新也是一个无法解决的问题!

(2)数据表结构还是由表来定义,但数据结构通过用户表单自定义启用而动态生成(生成物理表结构,当然

生成的表名需要有一定的数字规范,同时对应的PO,hbm.xml一并生成),程序中采用java的reflect来处理

生成的物理文件并进行页面显示;有一个前提,表单一旦定义完成后就不允许修改(表单定义后,有个启用

的过程),如果需要,只能重新定义表单   ,这样数据的管理还是比较方便的。但同样这里也带来一个问题

(其实第一种方法也存在),如果某个表单删除后,数据将永远得不到表现了!也就是说,我们的数据表现

完全是通过表单来实现的(依赖于表单),但这样显然有不足之处,表单仅仅是一个表现的载体,持久数据

应该是不随界面而发生改变的.

针对以上两种情况,应该如何来作到统一和规范,符合表单自定义的规范呢?

ps.第二中方法,后来经过考虑有很多欠佳的表现,所以基本可以不予讨论,可以对第一种方法进行重点讨论,

◆◆

评论读取中....

请登录后再发表评论!

◆◆

修改失败,请稍后尝试


版权声明:本文为weixin_34790159原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。