首页> 中国专利> 一种应用于企业信息系统开发过程中快速构建表单的方法

一种应用于企业信息系统开发过程中快速构建表单的方法

摘要

本发明公开了一种应用于J2EE企业信息系统开发过程中快速构建动态业务表单的方法,该发明属于电子信息技术领域软件中间件软件技术。它是在表单域UI设计,采用HTML动态模版技术,提供B/S方式的表单定制页面和表单域定制页面,利用JDBC方式直接操作表单数据,完成表单定制后,后台自动生成模块儿根据定制信息对整个表单及对表单域的设计要求生成表定义数据,并存放在后台基础数据库中,前台页面显示数据时,使用后台统一的页面模板,从对应的实体表中动态取出真实数据,根据表定义数据显示。本发明具有代码量小,系统简单,高效,系统不需要重启,对表单域定义的修改操作可以立即看到实际效果的优点,可以提升表单的定制效率,降低开发成本,用户随时根据自身的需要定制表单,并实时见效及应用。

著录项

  • 公开/公告号CN103853543A

    专利类型发明专利

  • 公开/公告日2014-06-11

    原文格式PDF

  • 申请/专利权人 北京云天时空科技有限公司;

    申请/专利号CN201210521801.3

  • 发明设计人 不公告发明人;

    申请日2012-12-07

  • 分类号G06F9/44(20060101);

  • 代理机构

  • 代理人

  • 地址 100102 北京市朝阳区望京东路8号锐创国际B座1801室

  • 入库时间 2024-02-20 00:02:49

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-11-23

    未缴年费专利权终止 IPC(主分类):G06F9/44 授权公告日:20170808 终止日期:20171207 申请日:20121207

    专利权的终止

  • 2017-08-08

    授权

    授权

  • 2014-07-09

    实质审查的生效 IPC(主分类):G06F9/44 申请日:20121207

    实质审查的生效

  • 2014-06-11

    公开

    公开

说明书

技术领域

本发明所属领域是电子信息技术->软件->中间件软件特别是涉及到表单生成技术

背景技术

在大多数企业信息系统中,表单是系统和用户交互的基本接口,表单提供信息的展现及输入信息的接收,实现信息的收集、处理及流转,表单在企业信息系统中有着十分重要的地位。在企业信息系统的开发过程中,需处理的表单数量众多、种类繁杂;在企业信息系统的使用过程中,随企业生产流程的变更,表单又表现出很强的易变动性。以上两点给企业系统的开发人员带来很大的挑战,能否快速构建表单和及时有效变更表单,在很大程度上决定了企业系统的开发进度和质量。为解决上述问题,我们提出了动态表单构建方法。

目前已有的表单构建方法一般采用在线自定义表单的方法,该方法描述如下:

提供由JavaScript脚本语言实现的表单定制页面,利用鼠标拖拽方式,在页面上用系统提供的控件构建表单;页面构建完成后,为每页表单生成相应的一整套HTML页面代码、后台控制代码Action/Struts和Dao/Hibernate(业务逻辑层)业务代码及Spring等配置文件。整套页面需要重新部署才能生效。

优点:

1、可视化设计-----所见即所得 

2、易于使用,可以快速生成表单 

3、控件种类齐全,交互性好 

4、 开发要求低

缺点:

1、表单相关定义文件数量繁多、冗余

2、不能满足表单信息项的变化

3、表单数据繁杂、无规律

4、表单定制效率低、开发成本高

5、必须重启系统,表单才能生效。

发明内容

表单的快速定制 

提供B/S方式的表单定制页面和表单域定制页面,定制表单及表单域的基本参数,包括页面显示选项、jquery脚本校验选项、数据源选择、输出页面格式及是否支持缓存等表单要素。

表单与后台业务模块的集成

在表单定制过程中,除了可灵活自定义常规的表单类型外,还可以与后台的业务功能模块紧密衔接,调用后台的短信、彩信传输模块,实现一定的短彩信业务逻辑。

表单的数据库存储

完成表单定制后,后台自动生成模块,根据定制信息对整个表单及对表单域的设计要求生成表定义数据,并存放在后台基础数据库中。

表单的动态变更

所有定制表单的操作立即生效,即使实体表里有数据的时候也可以动态修改表单和表单域的定义,系统不需要重启,对表单域定义的修改操作可以立即看到实际效果。

表单的统一展现

前台页面显示数据时,使用后台统一的页面模板,从对应的实体表中动态取出真实数据,根据表定义数据显示。所有对数据表的读写操作采用JDBC的方式直接操作数据库以达到高效的目的。

表单的缓存读取

表单定义数据在系统启动时一次性装入系统缓存中,当有动态修改表单定义需求时,系统会先更新到数据库表对应的表定义,再同步到系统缓存,接下来所有对动态表的操作都会先读取缓存中的表定义数据,以提升表单处理性能。

本技术发明优点总结:

1、整个定制过程随时修改、及时生效,系统不用重启即可看到效果。

2、即使在表单里存在业务数据时也可动态修改表单的定义,最大程度                  

上保证数据不丢失。

3、采用HTML动态模板技术,所有表单共用一套展现代码,代码量小。

4、利用JDBC方式直接操作表单数据,系统简单、高效。

附图说明

图1是本发明动态表单构建结构示意图。

具体实施方式

表单定制步骤:

在表单定制页面定制整个表单(Form)及对应域(Field)的基本属性.点击确定按钮提交到后台处理模块。

根据用户定义在系统HTML模板库及JQuery脚本库中生成表单域(Field)对应的相关HTML源码片断,将表单定义信息存入相关表.( tb_form, tb_form_conf , tb_form_field)。

系统的SQL分析器生成与表单对应的SQL建表语句, 利用JDBC方式生成动态表单数据存储表。

表单显示步骤:   

后台采用统一的4个页面模板:list.html(列表页模板),add.html(添加页模板); edit.html(修改页模板), view.html(查看页模板),以列表页模板(list.html)为例,数据的显示过程如下:

1).利用JDBC方式从表单定义相关表( tb_form, tb_form_conf , tb_form_field)中读出列表页面上要显示的具体域(Field)的相关列信息,包括:列名、中文名、排序参数,封装成一个查询用的SQL语句。

2).利用JDBC方式查询真实的动态表单数据存储表d_xxxxxxxxxx_tb, 返回对应的分页数据集变量pageList。

3).list.html页面模板会循环处理pageList变量中的数据显示。

 

3. 主要类及方法说明:

DynamicFormAct.java:动态表单Action 动作控制器:负责页面请求的跳转处理,调用DynamicFormService.java类中相应的方法完成业务数据的请求处理过程。

DynamicFormService.java: 动态表单业务控制层:负责业务请求的封装,并调用DynamicFormDao.java类操作数据库。

DynamicFormDao.java:动态表单涉及到的所有JDBC操作封装DAO层。

其中DynamicFormAct.java 类的主要方法说明如下:

public String list() 查询数据方法:提供页面上的列表显示,处理方式如下:

1)  调用DynamicFormService.java类的queryFormByField()方法定位到Form表单对象,并获取Field表单域的相关定义信息。

2)  调用getSearchKeys()方法组装页面上Request查询请求里传过来的参数和值到指定的Map变量queryMap里。

3)  封装必要的分页,排序等查询参数,调用 DynamicFormService.java类中的 search()方法。

4)  最后调用DynamicFormDao.java类的search()方法根据queryMap里的查询条件结合表单定义信息拼装成对应的SQL查询语句,执行数据库查询操作并返回列表格式的分页数据。

 数据库表结构设计。

1).表单基本信息配置表:tb_form

用来存储表单的基本信息,其中关键字段如下:

db_type:数据库类型:支持Oracle, SQL Server, DB2, Mysql等常见数据库类型。

module_name: 表单所属的模块名:

tb_name: 数据存储表单的真实名字:形如d_xxxxxxxxxx_tb, 是由系统自动生成唯一的名字,其中xxxxxxxxxx表示系统生成的唯一序号。

其中,“tb_name”字段有着重要的作用,通过该字段的信息我们才能将表单中信息与其具体含义对应起来。

2).表单详细配置表:tb_form_conf

以key:value的方式存储的表单业务相关配置:包括表单数据源配置,消息模板配置,及缓存配置。

3).表单域配置子表:tb_form_field

用来存放表单数据存储表中的列的具体含义。包括列的基本数据类型,长度,列名,中文显示名, 默认值等。其中关键字段如下: 

add_html : 对应到添加页面的HTML片断 

edit_html :对应到修改页面的HTML片断

view_html:对应到查看页面的HTML片断

通过页面上定制的表单域(Field)的详细配置,系统生成相对应的HTML源码片断保存到数据库中,由这三个字段决定表单域(Field)的具体显示效果。

4).表单数据存储表,例如:d_20111224134000673_tb

是动态表单数据的具体存储表。

去获取专利,查看全文>
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号