`
jjxliu306
  • 浏览: 153094 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

java动态表单设计解析

    博客分类:
  • java
阅读更多

于雷劈网的表单设计器扩展,java实现后台解析(插件内容和字段和原版有一定改变)。致敬雷劈网.http://formdesign.leipi.org/ 

 

全部代码地址在 https://gitee.com/jjxliu306/deform

 

解析全部由java处理,时间紧迫,代码实现上不考虑太多的效率问题。原有控件部分已经屏蔽,如果大家感兴趣可以联系我一起加进来,另外如果控件有需要新增也可以联系本人(jjxliu306@163.com)。

 

数据表两个:

 

drop table if exists form;
-- 自定义的工单
create table form(
form_id	int auto_increment primary key ,
form_name varchar(255),
template text, -- 页面编辑好的原始html
html text , -- 反解析出来的页面html代码(设计到定义的select lictrl等控件要解析出展示代码)
data text, -- 自定义的各个控件字段的jsonarray格式存储
parse text ,
fields integer, 
crtime timestamp,
modify_time timestamp
); 

 

drop table if exists entry;
-- 保存各个工单填写的记录
create table entry(
id	int auto_increment primary key ,
form_id	int , -- 填写的动态工单ID
value	text, -- 实际为json格式,存储此次填写的动态表单数据
crtime timestamp ,
modify_time	timestamp 
);

 动态表单绘制完毕后由后台解析并存储到数据库,后续每次发起的工单通过form中的html在页面进行绘制。工单填写完毕通过页面将form表单内容jsonobject之后交由后台验证并保存。

 

 

 

 

以下是目前此项目的一些截图。

1、动态表单新增



 
2、动态表单预浏览



 
3、填写已设置动态表单的工单



 

4、工单浏览查看(readonly)



 

 

 

 

功能实现:

雷劈网动态表单中原有的字段大部分均添加了一些修改,譬如非空(notnull),将name和title区分开,增加select,radios,checkbox选项的数据从填写的url中通过ajax获取等。详细如下:

1、 针对text,textarea,select,checkboxs,listctrl,datepicker(自增控件)添加notnull非空选项,勾选此选项后,后续数据输入均会在后端进行非空验证(针对text中int,email等类型也会进行格式验证).

2、 listctrl屏蔽单位、合计、默认值,但增加每个列字段的非空验证选项(针对字段的int类型也会验证)。

3、 对所有控件中name和title区分出来,其中name主要用来后续表单存储结果中作为key,title用来后续表单验证中进行提示使用。

 

4、 select,radios,checkbox控件中选项数据均通过配置url从后台获取数据显示。

 

 

各个控件编辑图如下:

text:

 

textarea:

 

 

radio: 

 

checkboxs: 



 
select: 



 
datepicker:  

 

 listctrl:

 

 

最后来几张示例项目的全图:

 



 

 

 

 

 

  • 大小: 40.8 KB
  • 大小: 28.9 KB
  • 大小: 25.1 KB
  • 大小: 17.9 KB
  • 大小: 15.3 KB
  • 大小: 15 KB
  • 大小: 29.6 KB
  • 大小: 23.8 KB
  • 大小: 17.7 KB
  • 大小: 9.2 KB
  • 大小: 25.6 KB
  • 大小: 14.2 KB
  • 大小: 16.8 KB
0
0
分享到:
评论

相关推荐

    【Java】基于Pdfbox解析PDF文档中指定位置的文字和图片

    1.1 PDFBOX介绍 Apache PDFBox是一个开源Java库,支持PDF文档的开发和转换...Fill Forms – 使用PDFBox,您可以在文档中填写表单数据。 Print – 使用PDFBox,您可以使用标准Java打印API打印PDF文件。 Save as Image –

    Java 解析 PDF, pdfbox读取PDF内容

    NULL 博文链接:https://snowdymy.iteye.com/blog/1114344

    动态表单设计,SpringBoot项目,动态表单绘制完毕后由后台解析并存储到数据库,后续每次发起的工单通过form中.zip

    可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,...

    java视屏\5.WEB SERVER\5.GetPost表单解析.mp4

    java视屏\5.WEB SERVER\5.GetPost表单解析.mp4

    Java Web程序设计教程

    <<Java Web程序设计教程.pdf>>人民邮电出版社的教程哦,所以,好书,你懂的!! 第1章web应用开发简介 1 1.1何为web应用 1 1.1.1web的概念及发展 1 1.1.2web应用程序 2 1.2使用java开发web应用 3 1.2.1面向对象...

    java源码包---java 源码 大量 实例

    例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;...

    java IO流总结.md

    java I/O流的总结 1.操作数据单位:字节流、字符流 对于文本文件(.txt,.java,.c,.cpp),使用字符流处理 对于非文本文件(.jpg,.mp3,.mp4,.avi,.doc,.ppt,...),使用字节流处理 2.数据的流向:输入流、输出流 ...

    JAVA上百实例源码以及开源项目源代码

    例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;...

    JAVA上百实例源码以及开源项目

    例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;...

    java源码包4

    例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;...

    form表单回写技术java实现

    主要为大家详细介绍了java实现form表单回写技术的相关资料,需要的朋友可以参考下

    java源码包3

    例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;...

    Free Spire.PDF for JAVA

    Free Spire.PDF for JAVA可以支持许多功能,例如从PDF中提取文本,在PDF文档中绘制文本/图像/形状,创建和填充表单域,创建 PDF/A-1,添加和验证 PDF 数字签名。 此外,Free Spire.PDF for JAVA 支持将PDF 转换为...

    JavaPDF操作类库API_Free Spire.PDF for Java_5.1.0

    表单域;页眉页脚;水印;文本列表、高亮、替换、上下标、对齐方式;形状;图片;数字签名、文档加密、骑缝章;表格;字体应用;附件;打印;超链接;注释;书签等。 2.应用场景:PDF文档创建、编辑、转换、预览及...

    JAVA高并发高性能高可用高扩展架构视频教程

    手写Tomca之深度解析动态资源请求原理 深度解析springMVC实现原理(手写springMVC框架) Java验证码 正则黑名单爬虫系统 深入数据库连接池内部运转原理 分布式服务下的交易一致 企业必备技能之面向服务编程Web-Service...

    金蝶K3星空云获取报表查询 WEB API(成本计算单报表查询) JAVA版.rar

    1. 基于金蝶K3星空云 Java Sdk 为例的报表查询WEB API接口。 2. 本例提供了基本的参考示例,JAVA小伙伴很容易看懂。 3. 本例提供了核心代码类,不是全套,为金蝶K3web api 开发的小伙伴提供基本思路。 4. 本例包括...

    java源码包2

    例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;...

    URLEncodingParser:URL 表单编码解析器

    URL 表单编码解析器线程安全的 URL 表单编码流解析器的实现。 解析器被构建为能够容忍流长度和最大长度要求,例如在 Web 服务器环境中。 在解析Front Controller时,通常有必要且谨慎地以任意长度截断流,以保护应用...

Global site tag (gtag.js) - Google Analytics