CN104504160A - 基于SSH框架的Excel文档在线批量写入方法 - Google Patents

基于SSH框架的Excel文档在线批量写入方法 Download PDF

Info

Publication number
CN104504160A
CN104504160A CN201510027712.7A CN201510027712A CN104504160A CN 104504160 A CN104504160 A CN 104504160A CN 201510027712 A CN201510027712 A CN 201510027712A CN 104504160 A CN104504160 A CN 104504160A
Authority
CN
China
Prior art keywords
excel document
name
data
database
document
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510027712.7A
Other languages
English (en)
Other versions
CN104504160B (zh
Inventor
吴敏
熊永华
潘文杰
黄晓茜
李�浩
焦春焕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China University of Geosciences
Original Assignee
China University of Geosciences
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China University of Geosciences filed Critical China University of Geosciences
Priority to CN201510027712.7A priority Critical patent/CN104504160B/zh
Publication of CN104504160A publication Critical patent/CN104504160A/zh
Application granted granted Critical
Publication of CN104504160B publication Critical patent/CN104504160B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种基于SSH框架的Excel文档在线批量写入方法,在B/S架构下实现,包括以下步骤:步骤一、在客户端的浏览器中填写Web表单并提交;步骤二、根据提交的表单内容在数据库中创建新的数据表;步骤三、通过POI的HSSF接口创建Excel文档;步骤四、完成对Excel文档的浏览器阅读、编辑和保存操作;步骤五、将Excel文档的数据部分保存到数据库中。本发明解决了根据需求在线创建Excel文档并将更新的数据同步到数据库中的问题,实现了Excel文档与浏览器的集成控制。

Description

基于SSH框架的Excel文档在线批量写入方法
技术领域
本发明涉及一种基于SSH框架的Excel文档在线批量写入方法。
背景技术
随着信息技术的发展,越来越多的信息以Excel文档的方式存储,并通过网络获得应用。在大中小企业的内部,Excel文档主要存储于基于Web的各种办公管理系统及数据管理系统中。在业务处理的过程中,如何方便、快捷地根据需求在客户端浏览器中创建Excel文档,不仅将数据在Excel文档中加载展现给用户,并能够快速地进行文档的编辑,同时能够将更新的数据同步到数据库中,成为了一项重要的研究内容。
目前一般采用的方法有以下两种,一是将Excel文档保存到Web服务器的指定目录下,用户在使用时首先将文档手工下载到本地,然后利用MS Office软件在本地完成编辑保存操作,最后将编辑好的文档再上传到Web服务器上去。二是以浏览器网页的形式将Excel文档中的数据读取到动态网页中,在文档上传到Web服务器后,利用浏览器对读取到网页中的数据进行在线编辑操作,并将数据同步到数据库中。但是,方法一虽然可以完成Excel文档的编辑和上传操作,但是文档直接保存到目录下安全性差,没有实现Excel文档在浏览器中的在线阅读编辑功能,并且没有将文档中具体数据同步到数据库的表中。方法二虽然能够实现将数据同步到数据库中的操作,但是原有的Excel文档同样没有直接在浏览器中利用,容易造成原有文件中的信息丢失,难以实现Excel文档与浏览器的在线集成控制。
发明内容
为了解决现有技术的不足,本发明提供了一种基于SSH框架的Excel文档在线批量写入方法,不仅能够根据需求在线创建Excel文档并将更新的数据同步到数据库中,并且可以实现Excel文档与浏览器的集成控制。
本发明为解决其技术问题所采用的技术方案是:提供了一种基于SSH框架的Excel文档在线批量写入方法,在B/S架构下实现,具体包括以下步骤:
(1)在客户端的浏览器中填写Web表单并提交;所述Web表单的信息包括表名和列名;
(2)对表名进行重名判断,并对列名进行字段长度判断,若Web服务器的数据库中不存在相同的表名并且列名的字段长度未超出设置范围,则设置相应字段,插入记录,在数据库中创建新的数据表;所述数据表与Web表单具有相同的表名和列名;
(3)解析数据表的表头及数据,通过POI的HSSF接口创建Excel文档;所述Excel文档包括表名、列名、表头和数据;
(4)完成对Excel文档的浏览器阅读、编辑和保存操作:
(4-1)通过客户端向Web服务器发出获取Excel文档请求;
(4-2)Web服务器响应获取Excel文档请求,将Excel文档从数据库中取出并传到客户端;
(4-3)利用基于客户端的ActiveX控件,通过JavaScript对ActiveDocument属性的访问,将Excel文档在客户端的浏览器中打开以供编辑,编辑时产生的Excel文档的数据部分;
(4-4)ActiveX控件检测到用户保存并关闭文档事件后,ActiveX控件的HTTP接口将Excel文档的数据部分发送到预设的数据处理页面,完成Excel文档的存档,并将编辑后的Excel文档传回Web服务器;
(5)将Excel文档的数据部分保存到数据库中:
(5-1)定义一个泛型类用于存放Excel文档中的工作表记录;
(5-2)用Java中的for循环语句按照表名在数据库中查找编辑后的Excel文档,读取其表名、列名和数据部分,然后利用循环算法解析Excel文档中的数据部分;
(5-3)将解析后的数据部分存储到数据库的数据表中。
步骤(1)中,在互联网请求或响应的模式下,利用IE浏览器对作为Web服务器的Tomcat已经发布的系统工程网页进行Web访问,在浏览器中在线填写表单信息,并通过SSH框架下的Action类提交到后台Web服务器。
本发明基于其技术方案所具有的有益效果在于:
(1)本发明基于B/S架构和SSH开发框架,利用互联网作为信息载体,解决现有Excel文档数据上传方法缺乏通用性,对系统环境依赖较强等问题;
(2)本发明采用基于客户端的ActiveX控件,通过JavaScriopt对控件的调用来实现Excel文档在浏览器中打开和编辑功能,使得文档的控制方便,用户操作简洁直观,避免了采用其他方法时交互安全性差、并发处理难以实现、信息丢失和客户端操作复杂的问题;
(3)本发明有机地将传统文件上传方法和在线数据上传方法结合在一起,不仅能够根据需求在线创建Excel文档并将更新的数据同步到数据库中,并且可以实现Excel文档与浏览器的集成控制。
附图说明
图1是本发明的一种基于SSH框架的Excel文档在线批量写入方法流程示意图。
图2是SSH架构后台处理流程示意图。
图3是基于客户端的ActiveX控件架构图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明。
参照图1,本发明提供了一种基于SSH框架的Excel文档在线批量写入方法,在B/S架构下实现,具体包括以下步骤:
(1)在互联网请求或响应的模式下,利用IE浏览器对作为Web服务器的Tomcat已经发布的系统工程网页进行Web访问,在浏览器中在线填写表单信息,并通过SSH框架下的Action类提交到后台Web服务器,所述Web表单的信息包括表名和列名;不同的列名之间可以用“|”或其他分隔符隔开;
(2)对表名进行重名判断,并对列名进行字段长度判断,若Web服务器的数据库中不存在相同的表名并且列名的字段长度未超出设置范围,则设置相应字段,插入记录,在数据库中创建新的数据表;所述数据表与Web表单具有相同的表名和列名;参照图2,后台处理方法的基本业务流程是:在表示层中,首先通过JSP页面中的标签库、CSS、JS等文件实现界面交互,然后Struts2根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action动作类处理,通过对实体类和数据访问对象类的调用,完成数据操纵和数据访问。在业务逻辑层中,管理服务组件的SpringIoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑。而在数据访问层中,则依赖于Hibernate的O/R映射管理机制和数据库交互,处理DAO组件请求的数据,并返回处理结果;
(3)解析数据表的表头及数据,通过POI的HSSF接口创建Excel文档;所述Excel文档包括表名、列名、表头和数据;
(4)参照图3,完成对Excel文档的浏览器阅读、编辑和保存操作:
(4-1)通过客户端向Web服务器发出获取Excel文档请求;
(4-2)Web服务器响应获取Excel文档请求,将Excel文档从数据库中取出并传到客户端;
(4-3)利用基于客户端的ActiveX控件,通过JavaScript对ActiveDocument属性的访问,将Excel文档在客户端的浏览器中打开以供编辑,编辑时产生的Excel文档的数据部分;
(4-4)ActiveX控件检测到用户保存并关闭文档事件后,ActiveX控件的HTTP接口将Excel文档的数据部分发送到预设的数据处理页面,完成Excel文档的存档,并将编辑后的Excel文档传回Web服务器;
(5)将Excel文档的数据部分保存到数据库中:
(5-1)定义一个泛型类存放Excel文档中的工作表记录;
(5-2)用Java中的for循环语句按照表名在数据库中查找编辑后的Excel文档,读取其表名、列名和数据部分,然后利用循环算法解析Excel文档中的数据部分;
(5-3)将解析后的数据部分存储到数据库的数据表中。

Claims (2)

1.一种基于SSH框架的Excel文档在线批量写入方法,在B/S架构下实现,其特征在于具体包括以下步骤:
(1)在客户端的浏览器中填写Web表单并提交;所述Web表单的信息包括表名和列名;
(2)对表名进行重名判断,并对列名进行字段长度判断,若Web服务器的数据库中不存在相同的表名并且列名的字段长度未超出设置范围,则在数据库中创建新的数据表;所述数据表与Web表单具有相同的表名和列名;
(3)解析数据表的列名,通过POI的HSSF接口创建Excel文档;所述Excel文档包括表名和列名;
(4)完成对Excel文档的浏览器阅读、编辑和保存操作:
(4-1)通过客户端向Web服务器发出获取Excel文档请求;
(4-2)Web服务器响应获取Excel文档请求,将Excel文档从数据库中取出并传到客户端;
(4-3)利用基于客户端的ActiveX控件,通过JavaScript对ActiveDocument属性的访问,将Excel文档在客户端的浏览器中打开以供编辑,编辑时产生的Excel文档的数据部分;
(4-4)ActiveX控件检测到用户保存并关闭文档事件后,ActiveX控件的HTTP接口将Excel文档的数据部分发送到预设的数据处理页面,完成Excel文档的存档,并将编辑后的Excel文档传回Web服务器;
(5)将Excel文档的数据部分保存到数据库中:
(5-1)定义一个泛型类用于存放Excel文档中的工作表记录;
(5-2)用Java中的for循环语句按照表名在数据库中查找编辑后的Excel文档,读取其表名、列名和数据部分,然后利用循环算法解析Excel文档中的数据部分;
(5-3)将解析后的数据部分存储到数据库的数据表中。
2.根据权利要求1所述的基于SSH框架的Excel文档在线批量写入方法,其特征在于:步骤(1)中,在互联网请求或响应的模式下,利用IE浏览器对作为Web服务器的Tomcat已经发布的系统工程网页进行Web访问,在浏览器中在线填写表单信息,并通过SSH框架下的Action类提交到后台Web服务器。
CN201510027712.7A 2015-01-20 2015-01-20 基于SSH框架的Excel文档在线批量写入方法 Expired - Fee Related CN104504160B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510027712.7A CN104504160B (zh) 2015-01-20 2015-01-20 基于SSH框架的Excel文档在线批量写入方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510027712.7A CN104504160B (zh) 2015-01-20 2015-01-20 基于SSH框架的Excel文档在线批量写入方法

Publications (2)

Publication Number Publication Date
CN104504160A true CN104504160A (zh) 2015-04-08
CN104504160B CN104504160B (zh) 2018-06-15

Family

ID=52945557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510027712.7A Expired - Fee Related CN104504160B (zh) 2015-01-20 2015-01-20 基于SSH框架的Excel文档在线批量写入方法

Country Status (1)

Country Link
CN (1) CN104504160B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105677390A (zh) * 2015-12-28 2016-06-15 国云科技股份有限公司 一种用于大表单的录入与保存方法
WO2017028611A1 (zh) * 2015-08-18 2017-02-23 中兴通讯股份有限公司 一种表单实现方法及装置
CN106844316A (zh) * 2016-12-13 2017-06-13 北京中船信息科技有限公司 在浏览器上在线处理office文档的方法和系统
CN107248065A (zh) * 2017-06-08 2017-10-13 中国建设银行股份有限公司 线上报表管理方法、系统、装置及存储介质
CN108416023A (zh) * 2018-03-08 2018-08-17 云南电网有限责任公司电力科学研究院 一种模拟用户操作回写系统数据的方法
CN108985598A (zh) * 2018-06-29 2018-12-11 中国地质大学(武汉) 一种基于用户生成内容的poi空间影响力评价方法及系统
CN110851400A (zh) * 2018-07-25 2020-02-28 北京国双科技有限公司 文本数据的处理方法及装置
CN110888874A (zh) * 2019-10-31 2020-03-17 苏州浪潮智能科技有限公司 一种通过Excel创建表单的装置、方法及存储介质
CN111339087A (zh) * 2020-02-20 2020-06-26 重庆锐云科技有限公司 将地产营销数据监控结果报表自动导出为Excel文件的方法
CN112883012A (zh) * 2021-02-08 2021-06-01 建信金融科技有限责任公司 一种Domino数据表格组件的实现方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7668870B1 (en) * 2004-04-15 2010-02-23 Citicorp Development Center, Inc. Methods and systems for updating web pages via a web data instant update utility
CN101976255A (zh) * 2010-10-25 2011-02-16 中国农业大学 网页信息批量导出生成word文档的方法和装置
CN102063306A (zh) * 2011-01-06 2011-05-18 夏春秋 一种通过电子表单进行应用开发的技术实现方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7668870B1 (en) * 2004-04-15 2010-02-23 Citicorp Development Center, Inc. Methods and systems for updating web pages via a web data instant update utility
CN101976255A (zh) * 2010-10-25 2011-02-16 中国农业大学 网页信息批量导出生成word文档的方法和装置
CN102063306A (zh) * 2011-01-06 2011-05-18 夏春秋 一种通过电子表单进行应用开发的技术实现方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
PAUL SANNA: "《Visual Basic for Applications 5 开发使用手册》", 31 December 1997 *
吕雪澄 等: ""基于ExtJS基于与SSH框架的后台数据导出Excel"", 《数据库与信息管理》 *
孙志磊 等: ""基于SSH的Web信息系统添加批量数据的设计和实现"", 《THE 2ND ASIA-PACIFIC CONFERENCE ON INFORMATION THEORY(APCIT2011)》 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017028611A1 (zh) * 2015-08-18 2017-02-23 中兴通讯股份有限公司 一种表单实现方法及装置
CN105677390A (zh) * 2015-12-28 2016-06-15 国云科技股份有限公司 一种用于大表单的录入与保存方法
CN106844316A (zh) * 2016-12-13 2017-06-13 北京中船信息科技有限公司 在浏览器上在线处理office文档的方法和系统
CN107248065A (zh) * 2017-06-08 2017-10-13 中国建设银行股份有限公司 线上报表管理方法、系统、装置及存储介质
CN108416023B (zh) * 2018-03-08 2021-09-28 云南电网有限责任公司电力科学研究院 一种模拟用户操作回写系统数据的方法
CN108416023A (zh) * 2018-03-08 2018-08-17 云南电网有限责任公司电力科学研究院 一种模拟用户操作回写系统数据的方法
CN108985598A (zh) * 2018-06-29 2018-12-11 中国地质大学(武汉) 一种基于用户生成内容的poi空间影响力评价方法及系统
CN108985598B (zh) * 2018-06-29 2021-11-05 中国地质大学(武汉) 一种基于用户生成内容的poi空间影响力评价方法及系统
CN110851400A (zh) * 2018-07-25 2020-02-28 北京国双科技有限公司 文本数据的处理方法及装置
CN110888874A (zh) * 2019-10-31 2020-03-17 苏州浪潮智能科技有限公司 一种通过Excel创建表单的装置、方法及存储介质
CN110888874B (zh) * 2019-10-31 2022-07-08 苏州浪潮智能科技有限公司 一种通过Excel创建表单的装置、方法及存储介质
CN111339087A (zh) * 2020-02-20 2020-06-26 重庆锐云科技有限公司 将地产营销数据监控结果报表自动导出为Excel文件的方法
CN112883012A (zh) * 2021-02-08 2021-06-01 建信金融科技有限责任公司 一种Domino数据表格组件的实现方法和装置

Also Published As

Publication number Publication date
CN104504160B (zh) 2018-06-15

Similar Documents

Publication Publication Date Title
CN104504160A (zh) 基于SSH框架的Excel文档在线批量写入方法
US11921798B2 (en) Generating a contextual search stream
US10672163B2 (en) Layout algorithm for entity relation model diagram
US9235636B2 (en) Presenting data in response to an incomplete query
CN104321743B (zh) 用于开发在通信网络上查询内容和服务的应用程序的方法和系统
CN104424265B (zh) 数字资源管理方法及系统
CN108140012A (zh) 实现网络内容生成所见即所得(wysiwyg)的方法和系统
CN104750796A (zh) 一种BS系统下导出Word的方法
US20120284312A1 (en) Data reporting framework across on-premise and hosted crm services
US10942984B2 (en) Portal connected to a social backend
CN111008051A (zh) 基于多维规则的动态布局
CN103701909A (zh) 视频应用的快速生成方法及系统
CN102523106A (zh) 基于FlexRIA技术的视频网站用户行为分析系统
US11971860B2 (en) Embedded folder views
CN107436785B (zh) 基于信息系统的Revit软件信息交互系统及交互方法
Shivalingaiah et al. Open source software for content management system
CN113741970B (zh) 数据仓库生产环境和开发环境分离实现方法和装置
CN103049543A (zh) 多分支配置文件的更新方法及更新工具
CN108804134A (zh) 基于产品特征的软件版本管理方法、装置、系统及介质
Kerzner et al. Big Data in Oil & Gas and Petrophysics
Kumar Microservices Architecture with Springboot
Mishra et al. Web Application using Spring Boot
Hu et al. Research and Application of J2EE and AJAX Technologies in Industry Report.
Zhao Design and Development of Multimedia Educational Resource Sharing Platform Based on Cloud Technology
CN115421721A (zh) 页面动态配置生成方法、装置、存储介质及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180615

Termination date: 20200120