基于SSH 架构的大学生创客服务平台设计与开发
2017-04-22王磊
王磊
(广东科贸职业学院信息工程系,广州 510430)
基于SSH 架构的大学生创客服务平台设计与开发
王磊
(广东科贸职业学院信息工程系,广州 510430)
创新创业教育蓬勃发展,利用“互联网+”技术,无缝对接高校大学生创客的创新能力需求,设计并开发基于SSH架构的大学生创客服务网站。首先分析网站项目需求,设计网站系统架构,基于J2EE技术及网站运行环境,使用SSH框架开发轻量化MVC模式的在线创客服务平台。该网站不仅能够汇集平台自身发布的创客信息资源及项目需求,还解决创客需求的定时采集和精准推送,为大学生创造良好的线上创客空间生态环境。
创客服务;轻量化;B/S架构;SSH
0 引言
“大众创业、万众创新”的号召发出后,全国掀起了“大众创业”“草根创业”的新浪潮,伴随着“互联网+”的兴起,各行各业都在借助互联网进行创新创业活动。创业者和自由职业者也越来越多,创客恰好适应了这一群体的工作方式,国内也涌现了猪八戒威客网站、威客中国等知名的服务交易网站。这些网站为创客、威客们提供了以无形的知识开发为商品交易的在线服务,是一种基于大规模网络协作的交易模式,并以悬赏招标形式进行营运[1-2]。威客模式实际上提供了一种有效的需求集聚、需求信息传播和知识增值的渠道[3]。“互联网+”支持下的创新创业服务,正式威客模式在“大众创业、万众创新”下的应用与延伸。
国内海量的青年高技能型人才是创客的主要人群。2015年全国在校大学生超过2400万人,许多高校成立了“大学生创客空间”,也叫“大学生众创空间”,它是对大学生群体进行创新服务的新型机构。雒亮等指出创客空间是创客素养为主要导向的教育模式的重要培育场所,并提出了基于O2O的创客教育空间结构[4]。本文设计并开发了大学生创客公益服务平台,其目标不仅要聚集线下高校创客空间内大量优秀的专业人才,提供给他们线上的创客工作室服务,更要对有潜质的创新创业项目需求,进行线上的聚集、展示、分享和实现,满足大学生的知识服务与开发需求的有效匹配和对接,打破大学生创客和项目开发需求者、中小微企业雇主、投资人之间的空间距离,最终赢得众多投融资机构的关注与支持,实现大学生创客的创新创业梦想。
1 平台功能分析
本文设计并开发了基于SSH架构的大学生创客服务平台,该平台具有架构稳定、扩展性强、功能实用的特点,平台主要功能需求如图1所示,具体介绍如下:
(1)大学生创客服务展示门户:主要功能包括服务需求者和开发者可以注册为会员,网站自动开通对应的个人创客工作室;服务展示门户可以推荐展示创客工作室、需求、成功案例和创新创业服务信息;大学生创客用户可以浏览各类信息,从而使得创业者及时获取需求信息,提升创新创业能力。
图1 平台主要功能需求
(2)个人创客工作室模块:包括工作室后台管理和前端展示两大部分,让每个大学生会员免费拥有自己在线的创客工作室空间。创客会员登录后进入工作室后台,可以完善创客资料和工作室各类信息,发布项目需求;也可以通过浏览需求,以创客身份进行需求投标和接单;对于需求的招投标管理,采用了基于工作流的项目管理模式,依次通过需求投标、选定开发者、项目开发、提交项目、审核提交和评价项目几个流程,最终完成项目的开发和管理。对于成功开发的项目,可以获取对方佣金。工作室前端展示包括工作室能力、需求、成功项目展示和案例展示等,通过这些信息来宣传和推荐自己的工作室。工作室访客登录后可以给工作室在线留言,进行用户之间的私信交流,并对工作室进行评价。平台设计了基于速度、质量和能力的三重打分评价体系,以此评价工作室的综合能力,依据评分作为工作室首页推荐的重要依据和信用保证。
(3)项目需求采集模块:用户可以设置采集的目标网站,指定采集关键字,系统通过匹配关键字来抓取用户关注的需求信息,并自动推送给创客。需求采集可设定为自动和手动两种模式,其中自动模式也可以设定采集的间隔时间。创客开发者可以查看采集到的需求,直接链接到采集目标网站中的项目需求详情,从而极大扩展了创客的需求对接成功率。
(4)系统后台管理:网站系统管理员可以发布网站门户上的各类信息,并在门户首页推荐各类展示信息,设定推荐展示时间;管理员可以审查工作室发布的各类信息,对违规内容进行清除,对违规账号进行禁用,并监管系统的安全运行。
2 平台实现
2.1 系统多层架构封装技术
大学生创客服务平台项目开发使用了J2EE技术的SSH+Tomcat+MySQL的服务器端解决方案,前端应用jQuery技术增强页面显示,使用MyEclipse作为主要编程工具。SSH(Struts+Spring+Hibernate)以其广泛的应用开发和稳定的架构表现,成为当今动态网站开发选用的主流技术框架[5-7]。应用平台采用五层架构的Java框架封装技术和XML系统配置技术,其系统多层架构封装方案如图2所示:
●客户层:大学生创客通过浏览器,访问网站平台的软件服务,基于用户操作界面,实现用户和系统的交互,并拥有独立在线的个人创客工作室。
●表示层:通过Struts Tags、Servlet及JSP的表示层技术,结合前端页面显示技术,调用网站平台部署的应用功能,同时获取创客的操作请求,并传到给控制层进行处理。
●控制层;分派创客用户的请求,调用模型层的业务逻辑组件,将用户的输入转化为模型层可执行的操作,并选择恰当的视图用于数据显示,反馈给用户。
●模型层:采用Hibernate对象/关系映射框架,实现了Mysql数据库的数据表的实体对象持久化,通过面向对象的编程操作数据库表,并封装成相应的业务逻辑组件Service。
●资源层:包括操作系统运行环境、数据库运行环境、文件存储环境及相应的硬件资源,为以上系统层次提供资源使用支持。
图2 系统多层框架封装方案
该平台构建的五层框架封装方案,是可重构技术的具体实现。其中,SSH是典型的轻量化MVC模式三层结构,该三层结构即包括:表现层、控制层和模型层,三层结构减弱了各层次之间的业务逻辑耦合,使得平台具有极强扩展性。轻量化体现在Spring应用框架本身的基础结构,以及它对其他应用框架的支持和装配能力,用Spring框架集成Hibernate和Struts应用,降低了技术框架之间的整合难度。另外,通过XML系统配置技术,实现了业务组件的配置和装卸,进一步增强了创客服务平台的应用扩展能力,满足了后续创客用户的个性配置和定制应用需求,实现了系统的可重构开发。
2.2 基于HttpClient+Jsoup的需求采集
针对互联网上存在的分散、海量的创新创业项目需求,创客极有可能会错失这类外部网站的项目需求。创客在获取本网站良好创客服务的基础上,如何及时获取其他海量的项目需求信息,并甄别哪些是用户感兴趣的信息,这就是用户需求采集定制模块的内容。需求采集模块基于网络爬虫技术的HttpClient+Jsoup技术,并结合Java多线程技术,实现了网站定时和手动的需求采集功能,实现流程如图3所示。
创客在个人工作室管理后台设置需求采集选项包括:需求订阅目标网站、网站栏目、感兴趣的订阅关键字、订阅规则(自动、手动),订阅起止时间等。通过定时器来启动自动采集,并构建Java多线程及HttpClient实例,依据用户设置对目标网站进行采集操作。Http-Client是一个开源项目,提供了功能丰富的支持HTTP协议的API,使得Java应用程序可以直接通过HTTP协议来访问网络资源,并对HTTP协议及报文进行处理。因此,在实际项目中采用HttpClient组件进行HTTP协议编程是一种高效经济的解决方案[8]。
对于抓取到的页面内容,可以使用开源项目Jsoup进行页面解析。Jsoup是基于Java的HTML解析器,该技术主要通过获取URL地址、HTML格式的文本内容进行解析[9]。Jsoup利用DOM、CSS以及功能强大的选择器,让用户方便地取出和操作页面数据。对于取出的目标页面地址,可以通过直接链接到外部网站的方式进行访问;也可以通过Jsoup解析并保存相关页面详细数据,直接在本网站上进行阅览。基于HttpClient+Jsoup的采集技术,实现了创客项目需求的自动采集和按需搜索,并可以及时将需求采集信息推送给订阅用户,使得创客可以在第一时间接收到感兴趣的需求。
图3 基于HttpClient+Jsoup的需求采集流程实现
2.3 PC端和移动端的整体开发实现
本平台的具体运行环境为:
系统服务器:Windows Server 2003
Web服务器:Tomcat应用服务器
数据库:MySQL5.5
传输协议:HTTP/TCP/IP协议
浏览工具:PC端浏览器、移动端浏览器
图4 PC浏览器端平台实现展示
创客平台的主要用户是青年人,因此平台的界面设计和用户体验对于平台使用极为重要。目前,移动互联应用和智能手机已经成为当今主流的访问平台,而智能手机中又包括Android和iOS两大阵营,因此,综合项目需求、开发成本、网站整体效果等多方面考虑,我们选用了移动端浏览器作为智能手机的访问入口。要实现通过PC端和移动手机端都能有效访问平台,需要考虑几大系统的访问特点及浏览设备的兼容性问题,并获得良好的用户体验,是系统实现要解决地首要问题。jQuery是当今网站前端开发的主流JavaScript开源框架,具有高效的前端开发能力、丰富的插件库和多功能开发接口。因此jQuery作为本平台前端开发的主要技术,通过jQuery技术的使用极大增强了页面的动态效果。
PC浏览器端大学生创客服务平台地主界面如图3(a)所示,门户首页提供了个人创新工作室登录入口和平台上全方位的信息展示。需求匹配和项目管理是创客服务的重要模块,如图3(b)所示,需求的匹配和对接采用了基于工作流程的需求进度管理模式,上一步操作是需求进度进入到下级操作的前提,对于需求的每个进度点均保存了操作结果和项目文件资料,因此可以通过追溯,获得需求每个操作步骤的的历史信息。
jQuery Mobile是jQuery在手机和平板设备上的开发版本,是一个完整的移动端jQueryUI框架,因此移动端将使用jQuery Mobile开发真正的移动Web网站,如图4所示。
对于访问的页面和资源如何适配PC端和移动端,采用了通过终端判断分别调取两套页面资源的解决方案。对应PC端和移动端访问判断定位,项目通过javaScript进行设备判断,代码如下:
项目开发放弃了响应式一套终端资源的前端显示解决方案,虽然我们采用的解决方案需维护两套页面资源,但是该方案可以实现根据不同访问终端个性化设计界面和加载信息的项目需求,让PC端的Web设计和实现过程更加清晰,同时也考虑了移动端的使用特点,如配合重力感应操作、流量限制等。jQuery+ jQuery Mobile的前端技术开发方案,平台以较小代价较好解决了跨终端的访问需求,实现了增强的页面显示效果和良好用户体验。
图4 移动手机浏览器端平台实现展示
3 结语
本文分析了大学生创客服务平台的项目需求,设计了网站的系统架构,开发了基于SSH架构的大学生创客服务网站。该网站不仅能够汇集平台自身发布的创客资源及项目需求,还解决了创客需求的定时采集和精准推送。在线的创客空间及其知识服务,成为了高校“创客课堂”的线上延伸,为大学生营造了良好的创客空间生态环境和创新创业氛围。
[1]黄艳兰.威客猪八戒网站的营运与盈利分析[J].科技传播,2010,5(3):101,105.
[2]韩姣红.科技情报开发与经济[J].江苏技术师范学院学报,2009,19(1):108-110.
[3]原光,王艺.威客模式下政府信息资源增值利用路径探析[J].企业经济,2012,385(9):91-94
[4]雒亮,祝智庭.创客空间2.0:基于O2O架构的设计研究[J].开放教育研究,2015,21(4):35-43.
[5]林振荣.基于SSH架构的代码构建自动化研究[J].科技广场,2014,8:63-65.
[6]薛桂香,任女尔,闫世峰,林涛.基于简单工厂模式的SSH+ExtJs架构泛型化研究[J].河北工业大学学报,2015,3: 68-72.
[7]于湛麟,李仲秋,任永昌.SSH框架实现MVC架构的电子商务软件平台[J].河北工业大学学报,2012,10:175-178.
[8]洪亮,田支斌.浅析中文环境下的Apach Commons HttpClient编程[J].电脑知识与技术,2008,3(4):782-783.
[9]盛雪丰.Android开发一大神器——Jsoup[J].电脑知识与技术,2015,8:69-71.
Design and Development of College Maker Service Platform Based on SSH Framework
WANG Lei
(Department of Information Engineering,Guangdong Polytechnic of Science and Trade,Guangzhou 510430)
Maker movement gains rapid development recently,uses Internet+technology,designs this site to work seamlessly with innovation ability of undergraduates.Designs and develops lightweight site for college maker based on SSH framework.Firstly,analyzes website and project requirements,proposes site system architecture.Based on J2EE techniques and system environment of development and operating platform,the online maker service platform is lightweight site based on MVC model and when SSH framework is used to develop this site. The site pooling marker information resources and project requirements is not only to host own distribution server,but also to make the time collect and push,in order to create a perfect environment of online maker space for undergraduates.
Maker Service;Lightweight;B/S Model;SSH
1007-1423(2017)07-0066-06
10.3969/j.issn.1007-1423.2017.07.017
王磊(1981-),男,河南开封人,博士研究生,讲师,研究方向为计算机集成制造技术、智能优化算法、Java编程技术等
2016-12-13
2017-02-20
广东省教育厅高校教育技术教学改革项目(No.2015064);广东省高职教育信息技术教指委教改项目(No.XXJZW2015 028);广东省高等职业技术教育研究会2016年一般课题(No.GDGZ16Y152);广东科贸职业学院教改项目(No.GDKM 2014-17、No.GDKM-CXCY12)