基于SSM的“互联网+”数据银行的设计与实现
2018-11-01钱春阳
钱春阳
摘要:大数据时代已经来临,数据信息深刻地影响着社会的发展与人类的生活。如何有效合理的利用大数据信息,让数据引领着人类的生活与进步,这就显得异常重要。该文介绍了在互联网模式下,利用SSM开源框架(SpringMVC、Spring、MyBatis)设计出数据银行平台,即利用数据银行平台,通过类似电子商务交易的形式实现数据的合理利用。
关键词:SSM;JavaEE;大数据;数据银行
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2018)18-0064-03
1 系统开发背景
第三次信息化浪潮的来临,以物联网、云计算与大数据为标志的信息技术快速发展。数据信息已经渗透到各行各业,成为信息化社会的重要资源。
当前软件产业的发展已经进入互联网时代,传统的软件开发模式已经不能快速满足互联网时代的高速迭代,快速响应的要求。譬如电信,银行等传统行业,数据的需求量激增,开发时间相对紧急,传统的从数据挖掘,数据处理到数据抽取的模式不能满足快速的需求增长,这就要求各行业需要建立对应的大数据平台,以及数据资源共享平台便于数据的重复需求获取,同时还可挖掘相应的数据需求搭建数据银行,在不违反法律的框架下,挖掘有价值的数据提供给用户。数据银行的信息化复杂程度较高,本文就以电信行业的业务特征为例,详细介绍数据银行的设计与实现[1]。
2 系统技术介绍
2.1 系统的技术选型
1)系统采用B/S架构,有数据需求的可以直接通过浏览器访问数据银行商城,查询和获取对应的数据。
2)系统分为后台管理系统,和数据银行商城,后端采用目前主流的SSM开源框架(SpringMVC、Spring、Mybatis)实现基于MVC模式的数据银行系统
3)前端页面采用Bootstrap前端框架以及轻量级的JS库Jquery,采用bootstrap框架的界面元素可以帮助开发人员快速开发出界面美观的页面。
4)JavaEE开发环境采用Eclipse集成环境,WEB服务器采用Tomcat7.0。
5)数据库采用主流开源数据库MySQL,用来存放后台管理数据以及商城端的数据,不负责源数据的存储。
2.2 关键技术介绍
1)JavaEE技术
JavaEE为应用Java技术开发服务器端应用提供了一种独立、可移植、多用户、安全的企业级平台,简化了企业应用的开发、管理和部署。JavaEE是一个标准,而不是一个产品。JavaEE使用多层的分布式模型,应用程序的逻辑根据其实现不同的功能被封装到各个组件中,各个组件根据其所属的层被安装到不同的机器中。
事实上,Sun公司设计JaEE的初衷就是为了解决C/S结构的弊端。在传统C/S模式中,客户端担当了过多的角色而显得臃肿,在这种模式中,第一次部署的时候比较容易,但难于升级或改进,可伸展性也不理想,而且经常基于某种专有的协议,通常是某种数据库协议。它使得重用业务逻辑和界面逻辑非常困難,现在JavaEE 的多层企业级应用模型将两层化模型中的不同层面切分成许多层,一个多层化应用能够为不同的服务提供一个独立的层。
经过多年发展,JavaEE平台已经成为电信、金融、电子商务等各行业的企业级应用系统的首选平台,比如各行业常用的OA办公系统,财务系统,人力资源系统等等。
2)SSM开源框架(SpringMVC、Spring、Mybatis)
企业级Web应用系统的开发要求有一个良好的软件架构,便于协作开发和扩展升级,以及后期的维护。目前主流的SSM集成框架提供了JavaEE企业级web应用的轻量级解决方案。SSM框架包括基于表现层的SpringMVC框架、基于持久层的MyBatis框架,以及业务逻辑层框架Spring。
SpringMVC:是Spring提供的实现Web MVC模式的轻量级的框架。使用性能方面比传统的Struts2更加优异,是Spring框架的一部分,可以方便地使用Spring所提供的其他功能。
Spring:Spring致力于解决JavaEE各层的解决方案。它以IOC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)为两大核心技术。使用基本的JavaBean来取代以前低效臃肿的开发模式。Spring在表现层提供SpringMVC解决方案,在业务逻辑层提供管理事物和日志等,在持久层可以整合各大持久层框架,譬如Mybatis框架等,提供高度的开放性融合其他框架。Spring是企业级应用的开发首选,贯穿于整个表现层,业务逻辑层和持久层。
Mybatis:是当前主流的Java持久层框架之一,相较于Hibernate,该框架具有高度的灵活性,性能优异,易于维护,学习简单,是各大互联网公司持久层首选的框架[2][3][4]。
3 系统的主体设计
数据银行平台包含数据银行后台管理系统和数据银行商城两大部分。数据银行的数据来源包含各行业的关系型数据库以及非关系型数据库,数据银行平台通过从数据源进行数据抽取,建模以及清洗等过程形成结构化和非结构化数据,并通过数据封装的形式进行API接口调用提供给有数据需求的用户[5][6]。
3.1 系统功能模块设计
数据银行根据业务需求分为后台管理系统和数据银行商城两大部分。其中商城端负责数据信息的展示与数据信息的销售。后台管理系统负责数据的API封装,监控分析,以及用户管理等。数据银行模块功能图如图1所示:
1)数据银行商城包括数据市场和个人中心。其中数据市场包括批量数据服务、API服务以及订购/申请。个人中心包括我的服务、我的账户、监控分析和个人信息。
2)数据银行后台管理包括资源管理,服务生命周期管理,用户管理,服务计价管理,监控分析,安全访问控制以及调度监控控制模块。同时还包括数据资产管理。
3.2 系统主流程设计
数据银行平台包含数据使用者、数据开发者、数据运营者三个角色。数据开发者:如果系统没有对应的数据服务,需进行数据开发;数据运营者:数据开发完毕后,进行相关的注册,对数据进行测试与发布,以及运营后的监控管理;数据使用者:数据在数据银行商城发布之后,用户通过商城进行数据的订购。主流程如图2:
3.3 系统数据模型设计
该系统结合数据信息封装、数据服务的订阅与调用,构建了用户与数据服务之间的关系,从而设计了符合数据银行系统的数据模型。根据主流程设计如下五个主表:数据服务表(service)、数据开发表(service_dev)、数据订阅表(data_order)、账户订阅关系表(acct_order_rel)。
4 系统的实现
4.1 后台管理系统的实现
1)首页
首页包含:待办信息、异常告警、当日Top5服务等。
2)数据管理
数据管理包含数据开发、服务注册、服务测试和服务计价界面
4.2 数据银行商城
该商城端包括服务市场、个人中心、帮助中心等。为用户提供数据的订阅功能
5 总结
通过数据银行平台的设计与实现,在某电信行业运营后,很好地为公司内部信息化数据的API调用提供了便捷的处理方式,同时公司在法律的框架下,提供相应的数据信息给用户,创造出了巨大的数据商业价值。使得企业的数据得到了最大化地利用。
参考文献:
[1]吴志霞. 基于 SSH 的在线项目管理平台的设计与实现[J].计算机与现代化,2011,27(8):184-186.
[2] Paul Deck. Spring MVC 学习指南[M]. 林仪明 崔毅,译.北京: 人民邮电出版社,2015.
[3] 邹红霆. 基于 SSM 框架的 Web 系统研究与应用[J]. 湖南理工学院学报,2017,30(1) 200-202.
[4] 陈欣. 基于java三层构架的管理信息系统中DAO层的构建探索[J]. 科技资讯, 2015, 13(11): 26-27
[5] 董源. 基于AOP的數据库应用安全控制的设计与实现[J]. 计算机系统应用,2015,24( 12) : 74-80.
[6] 王坤. 基于J2EE平台 Spring MVC 框架开发的 MIS 系统设计与实现[D]. 上海: 华东师范大学硕士学位论文, 2008.