CN104268739A - 一种将企业信息系统快速转化为移动应用的方法和系统 - Google Patents
一种将企业信息系统快速转化为移动应用的方法和系统 Download PDFInfo
- Publication number
- CN104268739A CN104268739A CN201410436981.4A CN201410436981A CN104268739A CN 104268739 A CN104268739 A CN 104268739A CN 201410436981 A CN201410436981 A CN 201410436981A CN 104268739 A CN104268739 A CN 104268739A
- Authority
- CN
- China
- Prior art keywords
- request
- service end
- data
- management
- enterprise
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种将企业信息系统快速转化为移动应用的方法和系统,在所述方法中,客户端应用向服务端Java中间件发送请求,其中客户端应用是html5文件和原生容器的组合;Java中间件接收到请求后进行核心处理,通过统一数据总线请求相应企业信息系统的数据库、接口或页面;统一数据总线通过数据库驱动、接口驱动或网页驱动从企业信息系统采集数据,转化为JSON格式数据并发送给客户端应用,其中JSON格式数据中key为自定义标签;客户端应用接收并解析JSON格式数据,生成用户界面,其中用户界面中的html5动态数据使用自定义标签。采用上述方案,可以降低开发难度,节省跨平台的开发时间和成本,从而有利于将企业信息系统快速转化为移动应用,并且不需要开发方提供过多或永久的技术支持。
Description
技术领域
本发明涉及移动通信领域的移动应用程序开发,尤其涉及将企业信息系统快速转化为移动应用的方法和系统。
背景技术
随着企业的不断发展,积淀了很多实用并且庞大的管理应用软件,如办公自动化系统(OA,OfficeAutomation System)、企业资源计划系统(ERP,Enterprise Resource Planning)、供应链管理系统(SCM,Supply Chain Management)、客户关系管理系统(CRM,Customer Relationship Management)等等。而移动互联网的快速发展和普及,使得企业移动信息化意识逐渐增强,移动化成为近年管理软件领域的一大热点,在提高收入、缩短产品上市时间、提升竞争力、改善用户体验、提高生产力和降低成本等方面体现了较明显的优势,是未来企业管理软件的必然趋势。
整个移动的产品不仅仅是对原来软件的移动化,还会加入很多的便利性内容。不仅继承了传统软件的功能和界面,还会把移动端的能力附加到软件中,例如读取手机通讯录、消息的主动提醒、通过App的方式进行推送等。移动化让手机成为了数据抓取的一个重要的端口。一方面让企业的信息数据转移到移动端,另一方面移动端的数据也可以很容易的抓取到云端。
对于如何将企业积淀的庞大管理应用软件转化到移动设备上去,目前有两种常见的解决方案。
第一种是软件定制,这是国外企业管理软件来源的主要渠道,相对于国外的繁荣而言,软件管理与软件定制在国内发展比较滞后,但也已经开始兴起。软件定制的优点是纯原生开发,可以通过原生编程语言访问设备所有功能,针对性强,能满足企业的个性化需求,打造最适合本企业的管理软件,并且,在软件实施时,能与企业当前的办公和业务系统无缝结合。其缺点是要求开发人员了解企业已有的复杂业务流程,并讨论设计新业务流程,开发周期较长。
第二种是中间件,这种方式已经历了多年的发展,移动中间件的概念已被行业内人士所熟知。对于旧模式中间件,基本的解释有:(1)封装不同平台底层API,提供统一API供开发;(2)一次开发,多平台运行;(3)BS、DB、WS等数据抓取方式;等等。移动中间件很大的一个特点就是代码可以重新复用在不同的平台,iOS和Android平台的应用不用重新写代码,只需要重新编译即可,并且,支持分布式计算,提供跨网络、硬件和OS平台的透明性的应用或服务的交互功能。同时,其也存在局限性,主要体现在:多数流行的中间件使用专有的API和协议,导致来自不同厂商的实现很难互操作;有些中间件只提供部分平台的实现,从而限制了应用在异构系统之间的移植。目前市场上已有纯原生移动化中间件和html5移动化中间件。
上述两种解决方案都存在不同程度的缺点,需要提出第三种方案,能充分综合上述两种方案的优势。
发明内容
基于背景技术中的上述问题,本发明提供了一种将企业信息系统快速转化为移动应用的方法和系统,其中所述方法包括如下步骤:
步骤101:客户端应用(app)向服务端Java中间件发送请求,其中所述客户端应用是html5文件和原生容器的组合;
步骤102:所述服务端Java中间件接收到所述请求后进行核心处理,通过统一数据总线请求相应企业信息系统的数据库、接口或页面;
步骤103:所述统一数据总线通过数据库驱动、接口驱动或网页驱动从所述企业信息系统采集数据,转化为JSON格式数据,并将所述JSON格式数据发送给所述客户端应用,其中所述JSON格式数据中key为自定义标签;
步骤104:所述客户端应用接收并解析所述JSON格式数据,生成用户界面,其中所述用户界面中的html5动态数据使用自定义标签。
进一步地,在上述方法中,所述客户端与所述服务端之间通过虚拟专用网络VPN连接,所述步骤101进一步包括:在向所述服务端Java中间件发送所述请求前,所述客户端应用先使用安全传输协议加密所述请求;所述步骤102进一步包括:所述服务端Java中间件接收到所述请求后,先使用所述安全传输协议认证所述请求的合法性,认证为合法后进行解密操作。
具体地,在上述方法中,所述步骤104进一步包括:在生成所述用户界面时,所述客户端应用中所述原生容器的原生代码通过JavaScript设备API访问所述客户端的设备功能,以返回并呈现相关内容,其中所述设备功能至少包括位置信息、通讯录、SIM卡信息、通话记录、记事本、通知系统、地图功能、邮件功能、麦克风和/或摄像头。
具体地,在上述方法中,所述企业信息系统至少包括办公自动化系统(OA,Office Automation System)、企业资源计划系统(ERP,Enterprise Resource Planning)、供应链管理系统(SCM,Supply Chain Management)和/或客户关系管理系统(CRM,Customer Relationship Management)。
较优地,在上述方法中,在所述服务端设置反向代理服务器,用于实施NGINX负载均衡策略,所述步骤102进一步包括:所述服务端的所述反向代理服务器在接收所述请求后,根据负载均衡策略将所述请求发送给负载轻的Java中间件进行核心处理。
本发明提供的一种将企业信息系统快速转化为移动应用的系统,所述系统至少包括客户端、服务端和企业信息系统,其中:
所述客户端上安装有相应的软件应用(app),所述软件应用是html5文件和原生容器的组合,用于向服务端Java中间件发送请求,接收并解析服务端Java中间件根据所述请求返回的JSON格式数据,生成用户界面,其中所述用户界面中的html5动态数据使用自定义标签;
所述服务端包括Java中间件,用于接收所述客户端的所述请求,对所述请求进行核心处理,通过统一数据总线请求相应企业信息系统的数据库、接口或页面,接收所述统一数据总线通过数据库驱动、接口驱动或网页驱动从所述企业信息系统采集的数据,将其转化为JSON格式数据,并将所述JSON格式数据发送给所述客户端,其中所述JSON格式数据中key为自定义标签;
所述企业信息系统包括数据库驱动、接口驱动或网页驱动,用于通过所述数据库驱动、接口驱动或网页驱动将相应的数据发送给所述统一数据总线。
进一步地,在上述系统中,所述客户端与所述服务端之间通过虚拟专用网络VPN连接,所述客户端进一步用于,在向所述服务端的所述Java中间件发送所述请求前,先使用安全传输协议加密所述请求;所述服务端的所述Java中间件进一步用于,在接收到所述请求后,先使用所述安全传输协议认证所述请求的合法性,认证为合法后进行解密操作。
具体地,在上述系统中,所述客户端的所述软件应用进一步用于,在生成所述用户界面时,其中的所述原生容器的原生代码通过JavaScript设备API访问所述客户端的设备功能,以返回并呈现相关内容,其中所述设备功能至少包括位置信息、通讯录、SIM卡信息、通话记录、记事本、通知系统、地图功能、邮件功能、麦克风和/或摄像头。
具体地,在上述系统中,所述企业信息系统至少包括办公自动化系统(OA,Office Automation System)、企业资源计划系统(ERP,Enterprise Resource Planning)、供应链管理系统(SCM,Supply Chain Management)和/或客户关系管理系统(CRM,Customer Relationship Management)。
较优地,在上述系统中,所述服务端进一步包括设置的反向代理服务器,用于实施NGINX负载均衡策略,具体为:所述服务端的所述反向代理服务器用于在接收所述请求后,根据负载均衡策略将所述请求发送给负载轻的Java中间件进行核心处理。
较优地,在上述系统中,所述系统进一步包括平台后台管理系统,其所实现的管理功能至少包括以下一种或多种的组合:组织机构维护、角色权限维护、版本管理、数字证书管理、移动设备管理、数据源管理、界面设计器、行为审计和/或异常管理。
通过本发明,利用html5文件和原生容器的组合来开发移动应用,不仅可以降低开发难度,而且编写一次核心代码就能够直接部署到多个平台,节省跨平台的开发时间和开发成本,从而有利于将企业信息系统快速转化为移动应用。此外,开发出来的移动应用可以交付企业用户自行使用,企业用户上手会比较快,不需要开发方提供过多或永久的技术支持,对开发方和企业用户来说是双赢的。
附图说明
图1为根据本发明的将企业信息系统快速转化为移动应用的方法流程图;
图2为根据本发明优选实施例的将企业信息系统快速转化为移动应用的系统的架构示意图。
具体实施方式
下文将详细参考附图描述本发明的优选实施例,借此对本发明如何应用技术手段来解决技术问题,并达到技术效果的实现过程能充分理解并据以实施。为了全面理解本发明,在以下详细描述中提到了诸多细节,但本领域技术人员应该理解,本发明可以无需这些具体细节而实现。在其他实施例中,不详细描述公知的方法、过程、组件和电路,以免不必要地使实施例模糊。
随着企业的不断发展,积淀了很多实用并且庞大的管理应用软件,如办公自动化系统(OA,OfficeAutomation System)、企业资源计划系统(ERP,Enterprise Resource Planning)、供应链管理系统(SCM,Supply Chain Management)、客户关系管理系统(CRM,Customer Relationship Management)等等。这些管理系统的使用不仅能让各工作环节顺畅,降低内耗,还能为公司决策层提供精准有效的决策依据,以提高工作效率,提升企业效益与竞争力,实现企业规范化及信息化的管理目标。
移动互联无疑已经成为当前IT业界最大的热点之一。而移动互联网的快速发展和普及,使得企业移动信息化意识逐渐增强,移动化成为近年管理软件领域的一大热点,在提高收入、缩短产品上市时间、提升竞争力、改善用户体验、提高生产力和降低成本等方面体现了较明显的优势,是未来企业管理软件的必然趋势。在我国,企业级移动应用最为广泛的领域是OA领域,这是因为移动设备能够作为OA系统的延伸终端,方便领导在出差、开会等不在办公室的时候进行审批等办公业务。因此当前我国的OA产品或强或弱基本上都带有移动功能。
对于如何将企业积淀的这些庞大的管理应用软件转化到移动设备上去,目前有两种常见的解决方案,但这两种解决方案都存在不同程度的缺点,因此,本发明提出了一种能充分综合上述两种方案的优势的技术方案。
下面结合附图和具体实施例对本发明做进一步的详细说明。
如图1所示,本发明提供一种将企业信息系统快速转化为移动应用的方法,其特征在于,所述方法包括如下步骤:步骤101:客户端应用(app)向服务端Java中间件发送请求,其中所述客户端应用是html5文件和原生容器的组合;步骤102:所述服务端Java中间件接收到所述请求后进行核心处理,通过统一数据总线请求相应企业信息系统的数据库、接口或页面;步骤103:所述统一数据总线通过数据库驱动、接口驱动或网页驱动从所述企业信息系统采集数据,转化为JSON格式数据,并将所述JSON格式数据发送给所述客户端应用,其中所述JSON格式数据中key为自定义标签;步骤104:所述客户端应用接收并解析所述JSON格式数据,生成用户界面,其中所述用户界面中的html5动态数据使用自定义标签。
具体地,在步骤101中,客户端应用发起的请求可以是http请求,也可以是socket请求,本发明的优选实施例中更倾向于socket请求。其中,http请求主要有http协议,基于http协议的soap协议,常见的http数据请求方式有get和post,其优点在于:1、基于应用级的接口使用方便;2、要求的开发水平不高,容错性强。所述http请求存在的缺点包括:1、传输速度慢,数据包大;2、如实现实时交互,服务器性能压力大;3、数据传输安全性差。所述socket请求用于实现服务端与客户端之间的物理连接,并进行数据传输,处于网络协议的传输层,主要有TCP/UDP两个协议。使用所述socket请求的优点主要在于:1、传输数据为字节级,传输数据可自定义,还可以进行压缩,数据量小,流量费用低;2、传输数据时间短,性能高;3、适合C/S之间信息实时交互;4、可以加密,数据安全性高。当然,其也存在一些缺点,比如:1、需要对传输的数据进行解析,转化为应用级的数据;2、对开发人员的开发水平要求高;3、相对于http协议传输,增加了开发量。
此外,使用html5文件和原生容器的组合来开发移动应用也是本发明的重要构思之一,优选的方式是移动应用大部分用html5编写用户界面,而需要访问移动设备功能的部分则使用原生代码。使用html5主要实现展示类信息和表单等,实现起来比较简单,能实现用户的个性化需求,自定义界面,用户可以选择页面模板。由于使用html5实现移动设备功能的访问比较难,而且必须依赖于google公司或者apple公司提供接口支持才能实现,因此,改用原生代码访问移动设备功能,包括位置信息、通讯录、SIM卡信息、通话记录、记事本、通知系统、地图功能、邮件功能、麦克风和/或摄像头等。这些原生代码中的大部分并不是自然生成可视的,而仅仅通过特定的转换将数据返回给移动应用的html5用户界面,再经过渲染返回给用户。使用这种组合方式开发移动应用,兼具html5网络应用程序的可移植性以及原生容器可使用原生设备功能之特性,对企业来说具有较大的吸引力。此外,也可以同时利用原生代码和html5代码开发用户界面,能让移动应用开发者在设计用户界面时选择最适合的工具。当然,其对开发者的要求也比较高,开发者既需要掌握原生代码的开发又需要掌握html5的开发。
在步骤103中,对于所述统一数据总线从所述企业信息系统采集数据存在三种可选的方式,所述统一数据总线将所述请求分别分发给数据库驱动、接口驱动或网页驱动,其中数据库驱动根据配置SQL进行写库操作,接口驱动根据配置调用接口,网页驱动根据http请求模拟web应用系统操作。对于上述三种可选的方式,可根据企业的不同情况和需求选择其中一种或多种的组合。
具体地,通过数据库驱动的方式是企业直接将自身的数据库开放给服务端,服务端可以直接配置SQL语句,通过用户名和密码直接读取企业数据库的数据。这种方式最明显的优势在于响应速度比较快,但也存在比较致命的缺陷,那就是企业数据库的数据可能会被篡改,很多企业处于安全考虑,不愿意直接开放其数据库。其中的接口驱动方式是提供webservice接口或http接口,目的是提交请求或获取数据,由于所述接口是根据客户端的需求定制开发的,因此,其优势在于能实现原企业信息系统与移动客户端的无缝集成,速度也比较快。所述通过网页驱动的方式能直接抓取企业网页上的数据,这样从企业用户的角度来说比较省心,但其缺点在本领域技术人员看来也是显而易见的。
JSON是JavaScript Object Notation的简称,是一种轻量的数据表示方法,其采用完全独立于语言的文本格式,该特性使JSON成为理想的数据交换语言。此外,JSON是JavaScript原生格式,这意味着在JavaScript中处理JSON数据不需要任何特殊的API或工具包。JSON可以将JavaScript对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从Web客户机传递给服务器端程序。JSON格式采用key:value的方式记录数据,非常直观,易于人阅读和编写,同时也易于机器解析和生成,比XML简洁。在本发明中,JSON中key为自定义标签,主要是通过标签属性获得要展示的数据内容,然后拼装动态JS内容块。
进一步地,所述客户端与所述服务端之间通过虚拟专用网络VPN连接,所述步骤101进一步包括:在向所述服务端Java中间件发送所述请求前,所述客户端应用先使用安全传输协议加密所述请求;所述步骤102进一步包括:所述服务端Java中间件接收到所述请求后,先使用所述安全传输协议认证所述请求的合法性,认证为合法后进行解密操作。
具体地,所述企业信息系统至少包括办公自动化系统(OA,Office Automation System)、企业资源计划系统(ERP,Enterprise Resource Planning)、供应链管理系统(SCM,Supply Chain Management)和/或客户关系管理系统(CRM,Customer Relationship Management)。
较优地,在上述方法中,在所述服务端设置反向代理服务器,用于实施NGINX负载均衡策略,所述步骤102进一步包括:所述服务端的所述反向代理服务器在接收所述请求后,根据负载均衡策略将所述请求发送给负载轻的Java中间件进行核心处理。
反向代理方式是指以反向代理服务器来接收互联网上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给互联网上请求连接的客户端,此时反向代理服务器对外就表现为一个服务器。让互联网上的主机通过不同的域名访问不同的内部网主机资源,使内部网主机免受外部网主机攻击,实现负载均衡和缓存功能,很大程度上减轻web服务器的负担,提高访问速度。现有技术中,能够实现反向代理的软件有很多,比如APACHE、SQUID、NGINX,本发明优选实施例中选择比较新的NGINX,用NGINX做反向代理有支持高并发、稳定、配置简洁等优点。
图2为根据本发明优选实施例的将企业信息系统快速转化为移动应用的系统的架构示意图,在该架构中,由客户端和服务端构成移动化平台,通过该移动化平台访问原企业信息系统,从所述原企业信息系统采集相应的数据通过客户端的用户界面进行展示。此外,还设置平台后台管理系统,其所实现的管理功能至少包括以下一种或多种的组合:组织机构维护、角色权限维护、版本管理、数字证书管理、移动设备管理、数据源管理、界面设计器、行为审计和/或异常管理。
根据本发明某些实施例的客户端即为移动设备,该移动设备通常包括存储器、存储器控制器、一个或多个处理单元、外设接口、RF电路、音频电路、扬声器、麦克风、输入/输出子系统、触摸屏、其他输出或控制设备,以及外部端口。这些组件通过一条或多条通信总线或信号线进行通信,这些组件可以更多或更少,或具有不同的组件配置,这些组件可以用硬件、软件或软硬件的组合来实现,包括一个或多个信号处理和/或专用集成电路。所述移动设备包括但不限于平板电脑、移动电话、媒体播放器、个人数字助理PDA等,还包括其中两项或多项的组合。
RF电路接收并发送电磁波。该RF电路将电信号变换成电磁波,或是将电磁波变换成电信号,并且经由电磁波来与通信网络以及其他通信设备进行通信。该RF电路可以包括用于执行这些功能的公知电路,包括但不局限于天线系统、RF收发机、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、CODEC芯片组、用户身份模块(SIM)卡、存储器等。该RF电路可以通过无线通信来与网络和其他设备进行通信,该网络例如又名万维网(WWW)的因特网、内部网和/或诸如蜂窝电话网络之类的无线网络、无线局域网(LAN)和/或城域网(MAN)。所述无线通信可以使用多种通信标准、协议和技术中的任何一种,包括但不局限于全球移动通信系统(GSM)、增强型数据GSM环境(EDGE)、宽带码分多址(W-CDMA)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、无线保真(Wi-Fi)、基于因特网协议的语音传输(VoIP)、Wi-MAX,用于电子邮件、即时消息传递和/或短消息服务(SMS)的协议,或任何其他合适的通信协议,包括在本发明提交日尚未开发出的通信协议。
触摸屏在设备与用户之间同时提供输出接口和输入接口。触摸屏控制器接收/发送来自/去往触摸屏的电信号,具体地,当用户点击用户界面上的某一控件时,会转换为用户的请求指令以发送给服务端获取数据或完成动作。该触摸屏则向用户显示可视输出,这个可视输出可以包括文本、图形、视频及其任意组合。本发明中,所提及的移动应用的用户界面通常情况下经由该触摸屏向用户呈现相应的数据内容,具体地,先解析从服务端接收的界面脚本,然后通过界面生成器生成相应的用户界面。
软件组件包括操作系统、通信模块(或指令集)、接触/运动模块(或指令集)、图形模块(或指令集)、用户界面状态模块(或指令集),以及一个或多个移动应用(或指令集)。操作系统(例如iOS、Android、WINDOWS、Darwin、RTXC、LINUX、UNIX、OS X等)包括用于控制和管理常规系统任务(例如内存管理、存储设备控制、电源管理等)以及有助于各种软硬件组件之间通信的各种软件组件和/或驱动器。
所述客户端上安装有相应的软件应用(app),所述软件应用是html5文件和原生容器的组合,用于向服务端Java中间件发送请求,接收并解析服务端Java中间件根据所述请求返回的JSON格式数据,生成用户界面,其中所述用户界面中的html5动态数据使用自定义标签。
使用html5文件和原生容器的组合来开发移动应用是本发明的重要构思之一,优选的方式是移动应用大部分用html5编写用户界面,而需要访问移动设备功能的部分则使用原生代码。使用html5主要实现展示类信息和表单等,实现起来比较简单,能实现用户的个性化需求,自定义界面,用户可以选择页面模板。由于使用html5实现移动设备功能的访问比较难,而且必须依赖于google公司或者apple公司提供接口支持才能实现,因此,改用原生代码访问移动设备功能,包括位置信息、通讯录、SIM卡信息、通话记录、记事本、通知系统、地图功能、邮件功能、麦克风和/或摄像头等。这些原生代码中的大部分并不是自然生成可视的,而仅仅通过特定的转换将数据返回给移动应用的html5用户界面,再经过渲染返回给用户。使用这种组合方式开发移动应用,兼具html5网络应用程序的可移植性以及原生容器可使用原生设备功能之特性,对企业来说具有较大的吸引力。此外,也可以同时利用原生代码和html5代码开发用户界面,能让移动应用开发者在设计用户界面时选择最适合的工具。当然,其对开发者的要求也比较高,开发者既需要掌握原生代码的开发又需要掌握html5的开发。
所述服务端包括Java中间件,用于接收所述客户端的所述请求,使用指令解析器对所述请求进行解析,然后对所述请求进行核心处理,通过统一数据总线请求相应企业信息系统的数据库、接口或页面,接收所述统一数据总线通过数据库驱动、接口驱动或网页驱动从所述企业信息系统采集的数据,将其转化为JSON格式数据,生成界面脚本,并将所述JSON格式数据和界面脚本发送给所述客户端,其中所述JSON格式数据中key为自定义标签。
所述服务端的Java中间件使用HTTPClient模拟web应用系统的http请求包,先解析从所述客户端接收的请求,再向原企业信息系统发起请求。HTTPClient是Apache Jakarta Common下的子项目,可以用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。HTTPClient提供的主要的功能包括:(1)实现了所有HTTP的方法(GET、POST、PUT、HEAD等);(2)支持自动转向;(3)支持HTTPS协议;(4)支持代理服务器等。
所述企业信息系统包括数据库驱动、接口驱动或网页驱动,用于通过所述数据库驱动、接口驱动或网页驱动将相应的数据发送给所述统一数据总线。对于所述统一数据总线从所述企业信息系统采集数据存在三种可选的方式,所述统一数据总线将所述请求分别分发给数据库驱动、接口驱动或网页驱动,其中数据库驱动根据配置SQL进行写库操作,接口驱动根据配置调用接口,网页驱动根据http请求模拟web应用系统操作。对于上述三种可选的方式,可根据企业的不同情况和需求选择其中一种或多种的组合。
具体地,通过数据库驱动的方式是企业直接将自身的数据库开放给服务端,服务端可以直接配置SQL语句,通过用户名和密码直接读取企业数据库的数据。这种方式最明显的优势在于响应速度比较快,但也存在比较致命的缺陷,那就是企业数据库的数据可能会被篡改,很多企业处于安全考虑,不愿意直接开放其数据库。其中的接口驱动方式是提供webservice接口或http接口,目的是提交请求或获取数据,由于所述接口是根据客户端的需求定制开发的,因此,其优势在于能实现原企业信息系统与移动客户端的无缝集成,速度也比较快。所述通过网页驱动的方式能直接抓取企业网页上的数据,这样从企业用户的角度来说比较省心,但其缺点在本领域技术人员看来也是显而易见的。
进一步地,在上述系统中,所述客户端与所述服务端之间通过虚拟专用网络VPN连接,所述客户端进一步用于,在向所述服务端的所述Java中间件发送所述请求前,先使用安全传输协议加密所述请求;所述服务端的所述Java中间件进一步用于,在接收到所述请求后,先使用所述安全传输协议认证所述请求的合法性,认证为合法后进行解密操作。
针对不同的用户要求,VPN有三种解决方案:远程访问虚拟网(Access VPN)、企业内部虚拟网(IntranetVPN)和企业扩展虚拟网(Extranet VPN),这三种类型的VPN分别与传统的远程访问网络、企业内部的Intranet以及企业网和相关合作伙伴的企业网所构成的Extranet(外部扩展)相对应。
随着企业的发展壮大,目前很多企业都面临着这样的挑战:分公司、经销商、合作伙伴、客户和外地出差人员要求随时经过公用网访问企业的资源,这些资源包括:企业的内部资料、办公自动化系统(OA,Office Automation System)、企业资源计划系统(ERP,Enterprise Resource Planning)、供应链管理系统(SCM,Supply Chain Management)、客户关系管理系统(CRM,Customer Relationship Management)、项目管理系统等。在本发明的优选实施例中,倾向于使用IPSec VPN来保证所述客户端与所述服务端之间的安全连接。当然,IPSec VPN也存在诸多限制,最明显的是成本高、复杂程度高,因此,也可以使用其他实施简便,不需改变现有网络结构,运营成本低的解决方案。
较优地,在上述系统中,所述服务端进一步包括设置的反向代理服务器,用于实施NGINX负载均衡策略,具体为:所述服务端的所述反向代理服务器用于在接收所述请求后,根据负载均衡策略将所述请求发送给负载轻的Java中间件进行核心处理。
反向代理方式是指以反向代理服务器来接收互联网上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给互联网上请求连接的客户端,此时反向代理服务器对外就表现为一个服务器。让互联网上的主机通过不同的域名访问不同的内部网主机资源,使内部网主机免受外部网主机攻击,实现负载均衡和缓存功能,很大程度上减轻web服务器的负担,提高访问速度。现有技术中,能够实现反向代理的软件有很多,比如APACHE、SQUID、NGINX,本发明优选实施例中选择比较新的NGINX,用NGINX做反向代理有支持高并发、稳定、配置简洁等优点。
以上所述仅为本发明的较佳实施例,并不用于限制本发明,凡在本发明精神和原则之内所做的任何修改、等同替换和改进等,均包含于本发明的保护范围之内。
Claims (11)
1.一种将企业信息系统快速转化为移动应用的方法,其特征在于,所述方法包括如下步骤:
步骤101:客户端应用(app)向服务端Java中间件发送请求,其中所述客户端应用是html5文件和原生容器的组合;
步骤102:所述服务端Java中间件接收到所述请求后进行核心处理,通过统一数据总线请求相应企业信息系统的数据库、接口或页面;
步骤103:所述统一数据总线通过数据库驱动、接口驱动或网页驱动从所述企业信息系统采集数据,转化为JSON格式数据,并将所述JSON格式数据发送给所述客户端应用,其中所述JSON格式数据中key为自定义标签;
步骤104:所述客户端应用接收并解析所述JSON格式数据,生成用户界面,其中所述用户界面中的html5动态数据使用自定义标签。
2.根据权利要求1所述的方法,其特征在于,所述客户端与所述服务端之间通过虚拟专用网络VPN连接,
所述步骤101进一步包括:在向所述服务端Java中间件发送所述请求前,所述客户端应用先使用安全传输协议加密所述请求;
所述步骤102进一步包括:所述服务端Java中间件接收到所述请求后,先使用所述安全传输协议认证所述请求的合法性,认证为合法后进行解密操作。
3.根据权利要求1或2所述的方法,其特征在于,所述步骤104进一步包括:在生成所述用户界面时,所述客户端应用中所述原生容器的原生代码通过JavaScript设备API访问所述客户端的设备功能,以返回并呈现相关内容,其中所述设备功能至少包括位置信息、通讯录、SIM卡信息、通话记录、记事本、通知系统、地图功能、邮件功能、麦克风和/或摄像头。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述企业信息系统至少包括办公自动化系统(OA,Office Automation System)、企业资源计划系统(ERP,Enterprise Resource Planning)、供应链管理系统(SCM,Supply Chain Management)和/或客户关系管理系统(CRM,Customer RelationshipManagement)。
5.根据权利要求1-4中任一项所述的方法,其特征在于,在所述服务端设置反向代理服务器,用于实施NGINX负载均衡策略,
所述步骤102进一步包括:所述服务端的所述反向代理服务器在接收所述请求后,根据负载均衡策略将所述请求发送给负载轻的Java中间件进行核心处理。
6.一种将企业信息系统快速转化为移动应用的系统,其特征在于,所述系统至少包括客户端、服务端和企业信息系统,其中:
所述客户端上安装有相应的软件应用(app),所述软件应用是html5文件和原生容器的组合,用于向服务端Java中间件发送请求,接收并解析服务端Java中间件根据所述请求返回的JSON格式数据,生成用户界面,其中所述用户界面中的html5动态数据使用自定义标签;
所述服务端包括Java中间件,用于接收所述客户端的所述请求,对所述请求进行核心处理,通过统一数据总线请求相应企业信息系统的数据库、接口或页面,接收所述统一数据总线通过数据库驱动、接口驱动或网页驱动从所述企业信息系统采集的数据,将其转化为JSON格式数据,并将所述JSON格式数据发送给所述客户端,其中所述JSON格式数据中key为自定义标签;
所述企业信息系统包括数据库驱动、接口驱动或网页驱动,用于通过所述数据库驱动、接口驱动或网页驱动将相应的数据发送给所述统一数据总线。
7.根据权利要求6所述的系统,其特征在于,所述客户端与所述服务端之间通过虚拟专用网络VPN连接,
所述客户端进一步用于,在向所述服务端的所述Java中间件发送所述请求前,先使用安全传输协议加密所述请求;
所述服务端的所述Java中间件进一步用于,在接收到所述请求后,先使用所述安全传输协议认证所述请求的合法性,认证为合法后进行解密操作。
8.根据权利要求6或7所述的系统,其特征在于,所述客户端的所述软件应用进一步用于,在生成所述用户界面时,其中的所述原生容器的原生代码通过JavaScript设备API访问所述客户端的设备功能,以返回并呈现相关内容,其中所述设备功能至少包括位置信息、通讯录、SIM卡信息、通话记录、记事本、通知系统、地图功能、邮件功能、麦克风和/或摄像头。
9.根据权利要求6-8中任一项所述的系统,其特征在于,所述企业信息系统至少包括办公自动化系统(OA,Office Automation System)、企业资源计划系统(ERP,Enterprise Resource Planning)、供应链管理系统(SCM,Supply Chain Management)和/或客户关系管理系统(CRM,Customer RelationshipManagement)。
10.根据权利要求6-9中任一项所述的系统,其特征在于,所述服务端进一步包括设置的反向代理服务器,用于实施NGINX负载均衡策略,具体为:所述服务端的所述反向代理服务器用于在接收所述请求后,根据负载均衡策略将所述请求发送给负载轻的Java中间件进行核心处理。
11.根据权利要求6-10中任一项所述的系统,其特征在于,所述系统进一步包括平台后台管理系统,其所实现的管理功能至少包括以下一种或多种的组合:组织机构维护、角色权限维护、版本管理、数字证书管理、移动设备管理、数据源管理、界面设计器、行为审计和/或异常管理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410436981.4A CN104268739A (zh) | 2014-08-29 | 2014-08-29 | 一种将企业信息系统快速转化为移动应用的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410436981.4A CN104268739A (zh) | 2014-08-29 | 2014-08-29 | 一种将企业信息系统快速转化为移动应用的方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104268739A true CN104268739A (zh) | 2015-01-07 |
Family
ID=52160259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410436981.4A Pending CN104268739A (zh) | 2014-08-29 | 2014-08-29 | 一种将企业信息系统快速转化为移动应用的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104268739A (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105245622A (zh) * | 2015-11-11 | 2016-01-13 | 中国建设银行股份有限公司 | 一种可配置的数据处理方法、系统及移动平台 |
CN105681903A (zh) * | 2016-01-08 | 2016-06-15 | 深圳创维数字技术有限公司 | 一种用户界面呈现的方法及装置 |
CN105955718A (zh) * | 2016-04-20 | 2016-09-21 | 深圳青虹数据技术有限公司 | 一种软件定制方法及系统 |
CN106355358A (zh) * | 2016-10-21 | 2017-01-25 | 用友网络科技股份有限公司 | 移动erp系统中具有双模式数据操作方法及erp系统 |
WO2017031954A1 (zh) * | 2015-08-25 | 2017-03-02 | 华为技术有限公司 | 一种数据通信方法、用户设备和服务器 |
CN106557820A (zh) * | 2016-11-24 | 2017-04-05 | 天津市普迅电力信息技术有限公司 | 一种变电运维标准作业移动端平台 |
CN106682881A (zh) * | 2017-01-05 | 2017-05-17 | 李铖浩 | 一种智能化办公自动化系统 |
CN107395601A (zh) * | 2017-07-26 | 2017-11-24 | 华迪计算机集团有限公司 | 一种基于vpn安全内网的移动办公系统及方法 |
CN107643911A (zh) * | 2017-08-21 | 2018-01-30 | 上海精灵天下数字技术有限公司 | 基于html5的界面交互及展示系统、方法 |
CN107895120A (zh) * | 2017-11-06 | 2018-04-10 | 聚好看科技股份有限公司 | 跨平台应用中数据处理方法、装置、电子设备和存储介质 |
CN108111387A (zh) * | 2016-11-25 | 2018-06-01 | 深圳联友科技有限公司 | 一种即时通讯平台及其流程审批方法 |
CN108270838A (zh) * | 2017-01-04 | 2018-07-10 | 中国科学院声学研究所 | 一种基于容器的浏览器html5资源协同方法 |
CN108540439A (zh) * | 2018-02-01 | 2018-09-14 | 顺丰科技有限公司 | 数据解析方法及系统、设备和存储介质 |
CN109067860A (zh) * | 2018-07-20 | 2018-12-21 | 山东中创软件工程股份有限公司 | 一种移动端消息处理方法及相关装置 |
CN110022354A (zh) * | 2019-03-03 | 2019-07-16 | 云南电网有限责任公司信息中心 | 基于http协议的移动应用集成方法、装置、计算机设备及存储介质 |
CN110019482A (zh) * | 2018-01-02 | 2019-07-16 | 航天信息股份有限公司 | 粮情数据采集方法、粮情中间件平台及粮情数据采集系统 |
CN110099033A (zh) * | 2018-01-30 | 2019-08-06 | 上海融聂电子科技有限公司 | 一种下位机架构及canfd总线数据库的硬件实时查询方法 |
CN110971688A (zh) * | 2019-11-29 | 2020-04-07 | 金蝶软件(中国)有限公司 | 一种数据导出方法及相关设备 |
CN112732256A (zh) * | 2020-12-31 | 2021-04-30 | 广东赛意信息科技有限公司 | 一种基于纯服务端开发语言的跨平台移动app开发架构 |
-
2014
- 2014-08-29 CN CN201410436981.4A patent/CN104268739A/zh active Pending
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017031954A1 (zh) * | 2015-08-25 | 2017-03-02 | 华为技术有限公司 | 一种数据通信方法、用户设备和服务器 |
US10735393B2 (en) | 2015-08-25 | 2020-08-04 | Huawei Technologies Co., Ltd. | Data communication method, user equipment, and server |
CN105245622A (zh) * | 2015-11-11 | 2016-01-13 | 中国建设银行股份有限公司 | 一种可配置的数据处理方法、系统及移动平台 |
CN105681903A (zh) * | 2016-01-08 | 2016-06-15 | 深圳创维数字技术有限公司 | 一种用户界面呈现的方法及装置 |
CN105681903B (zh) * | 2016-01-08 | 2019-05-28 | 深圳创维数字技术有限公司 | 一种用户界面呈现的方法及装置 |
CN105955718A (zh) * | 2016-04-20 | 2016-09-21 | 深圳青虹数据技术有限公司 | 一种软件定制方法及系统 |
CN105955718B (zh) * | 2016-04-20 | 2019-09-03 | 深圳青虹数据技术有限公司 | 一种软件定制方法及系统 |
CN106355358A (zh) * | 2016-10-21 | 2017-01-25 | 用友网络科技股份有限公司 | 移动erp系统中具有双模式数据操作方法及erp系统 |
CN106557820A (zh) * | 2016-11-24 | 2017-04-05 | 天津市普迅电力信息技术有限公司 | 一种变电运维标准作业移动端平台 |
CN108111387A (zh) * | 2016-11-25 | 2018-06-01 | 深圳联友科技有限公司 | 一种即时通讯平台及其流程审批方法 |
CN108270838A (zh) * | 2017-01-04 | 2018-07-10 | 中国科学院声学研究所 | 一种基于容器的浏览器html5资源协同方法 |
CN106682881A (zh) * | 2017-01-05 | 2017-05-17 | 李铖浩 | 一种智能化办公自动化系统 |
CN107395601A (zh) * | 2017-07-26 | 2017-11-24 | 华迪计算机集团有限公司 | 一种基于vpn安全内网的移动办公系统及方法 |
CN107643911B (zh) * | 2017-08-21 | 2021-02-02 | 上海精灵天下数字技术有限公司 | 基于html5的界面交互及展示系统、方法 |
CN107643911A (zh) * | 2017-08-21 | 2018-01-30 | 上海精灵天下数字技术有限公司 | 基于html5的界面交互及展示系统、方法 |
CN107895120A (zh) * | 2017-11-06 | 2018-04-10 | 聚好看科技股份有限公司 | 跨平台应用中数据处理方法、装置、电子设备和存储介质 |
CN110019482A (zh) * | 2018-01-02 | 2019-07-16 | 航天信息股份有限公司 | 粮情数据采集方法、粮情中间件平台及粮情数据采集系统 |
CN110099033A (zh) * | 2018-01-30 | 2019-08-06 | 上海融聂电子科技有限公司 | 一种下位机架构及canfd总线数据库的硬件实时查询方法 |
CN108540439A (zh) * | 2018-02-01 | 2018-09-14 | 顺丰科技有限公司 | 数据解析方法及系统、设备和存储介质 |
CN108540439B (zh) * | 2018-02-01 | 2021-10-29 | 顺丰科技有限公司 | 数据解析方法及系统、设备和存储介质 |
CN109067860A (zh) * | 2018-07-20 | 2018-12-21 | 山东中创软件工程股份有限公司 | 一种移动端消息处理方法及相关装置 |
CN110022354A (zh) * | 2019-03-03 | 2019-07-16 | 云南电网有限责任公司信息中心 | 基于http协议的移动应用集成方法、装置、计算机设备及存储介质 |
CN110971688A (zh) * | 2019-11-29 | 2020-04-07 | 金蝶软件(中国)有限公司 | 一种数据导出方法及相关设备 |
CN112732256A (zh) * | 2020-12-31 | 2021-04-30 | 广东赛意信息科技有限公司 | 一种基于纯服务端开发语言的跨平台移动app开发架构 |
CN112732256B (zh) * | 2020-12-31 | 2024-03-19 | 广东赛意信息科技有限公司 | 一种基于纯服务端开发语言的跨平台移动app开发架构 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104268739A (zh) | 一种将企业信息系统快速转化为移动应用的方法和系统 | |
US20210056260A1 (en) | Systems and methods for updating a mobile application | |
US10277702B2 (en) | Method and apparatus for accessing an enterprise resource planning system via a mobile device | |
CN100547545C (zh) | 用于网络边缘计算的应用拆分的方法和系统 | |
JP2013512512A (ja) | 軽量クライアントを使用してネットワーク上で仮想化コンピューティングサービスとインターフェースするための方法 | |
US10893093B2 (en) | Translating a user's working context from one operating system and associated applications to a different operating system and associated applications | |
CN105205072B (zh) | 网页信息的展示方法和系统 | |
CN108984202B (zh) | 一种电子资源分享方法、装置和存储介质 | |
CN103701834A (zh) | 基于代理的移动云服务访问系统及方法 | |
CN109032573A (zh) | 一种硬件编程系统和方法 | |
US20090037829A1 (en) | Framework to integrate web services with on-premise software | |
CN101409731A (zh) | 通过ie远程对家庭电器设备控制的方法 | |
CN112394907A (zh) | 基于容器的交付系统构建方法、应用交付方法和交付系统 | |
US11803786B2 (en) | Enterprise integration platform | |
TWI641984B (zh) | 供終端裝置與網站互動的方法、提供網路服務予終端裝置的方法以及供終端裝置與網站互動的計算機程式產品 | |
Li et al. | On the design of a mobile agent environment for context-aware M-commerce | |
CN104065507A (zh) | 基于双平台复用技术的接入设备业务配置方法及系统 | |
Barroca Filho et al. | Development of mobile applications from existing Web-based enterprise systems | |
CN202135163U (zh) | 一种移动中间件系统 | |
KR101489677B1 (ko) | 웹 기반 생애 주기 관리 시스템을 구축하기 위한 동적 어플리케이션 개발 서비스 제공 방법 | |
Mi et al. | Research on mobile web applications end to end technology | |
CN114168226A (zh) | 一种解码数据结构方法及相关装置 | |
KR20240078814A (ko) | 사용자 맞춤형 로컬 행사 서비스 제공 서버, 방법 및 기록매체 | |
CN114697121A (zh) | 电力监控系统的数据处理方法、装置、计算机设备 | |
CN103699965A (zh) | 基于j2ee的用电管理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150107 |