高校师生科研团队信息管理平台的设计与实现

2017-12-19 01:20孙新华
河北软件职业技术学院学报 2017年4期
关键词:客户端管理系统服务器

朱 萍,孙新华

(河北北方学院 信息科学与工程学院,河北 张家口 075000)

高校师生科研团队信息管理平台的设计与实现

朱 萍,孙新华

(河北北方学院 信息科学与工程学院,河北 张家口 075000)

通过运用经典的MVC分层架构设计模式开发出适合高校师生科研团队的信息管理系统。该系统基于Android平台,能够完成科研信息的一些统计工作,实现项目申报、费用报销等模块的功能,能随时随地准确查询、反馈各类科研成果,有效提高学院科研工作效率。

信息管理平台;Android;科研管理系统;MVC

0 引言

在互联网快速发展的今天,各高校顺应时代潮流纷纷引入科研信息管理系统,以进一步提高科研管理水平。而随着科研管理工作的实际需要和现代科技的进步,高校科研管理平台需要不断完善、升级,运行环境也应得到相应的改善和优化,这样才能使科研管理的过程操作更便捷、更有时效性。基于Android客户端的科研管理系统能随时随地地准确查询、反馈各类科研成果,有效提高高校科研管理工作效率。

本文在程序设计过程中以科研引导调动师生科研团队的积极性为重点,结合已有系统,根据笔者所在学院的科研工作实际情况,从科研管理系统需求分析、功能分析等方面入手,设计开发出一款实用性更强的科研管理信息系统。这样对进一步提高科研管理工作效率具有重大意义。虽然科研信息管理系统的出现给科研管理工作带来了实质性的变化,但是需要不断的升级改造,才能更好地满足科研工作的需要。

1 高校师生科研团队信息管理平台的需求分析

科研管理系统平台是一款基于Android的科研管理软件,它的应用方便管理者管理科研信息,使科研管理工作更加系统化、规模化。

1.1 用户需求分析

科研管理系统平台是面向笔者所在单位师生科研统计的Android应用程序,其应用的主要价值在于教师、学生可以通过平台填报科研信息,管理者可以通过平台对提交的数据进行管理反馈。系统需要满足用户以下需求:

(1)教师或学生通过系统提交科研信息,其中包括承担项目情况、科研获奖情况及学生参赛信息情况等;

(2)用户通过客户端提交项目审批数据,管理员负责管理项目信息;

(3)对于教师承担项目的费用或学生参赛所需费用,通过客户端提交申请,管理员端根据实际情况对报销费用进行审批,并将审批结果及时反馈给用户。

1.2 功能需求分析

通过分析并结合笔者所在学院科研统计信息管理情况,本平台主要实现以下功能模块。(1)个人信息模块。查看修改个人基本信息。(2)注册登录模块。用户(教师、学生等人员)通过Android端注册登录软件。

(3)科研统计模块。通过客户端提交教师承担项目统计表、科研获奖统计表、学生竞赛统计表等数据,服务器获取数据并反馈信息给用户。

(4)项目申报模块。用户提交项目申报数据,管理员通过服务器接收数据并对数据进行处理,反馈给用户。

(5)报销信息模块。用户登录客户端填写报销单,提交到服务器进行审核,通过后将数据返回到客户端。

通过对用户需求及其功能需求分析,系统功能如图1所示。

图1 系统功能

1.3 系统可行性分析

系统开发前通过科学的方法分析论证,提出了方案,进而验证系统是否可以正常使用以及系统开发的可行性等问题。下面从两个方面进行可行性分析。

(1)经济可行性。本软件的开发是通过网上阅读相关资料,参考其他管理系统设计开发的,只需要百度搜索就可以找到想要的信息,成本低,开发软件所需要的平台也是免费的。

(2)技术可行性。本软件对硬件要求较为简单,只需要一台电脑,一个手机就可以了。该APP的开发主要针对信息的有效处理和应用的实用性,采用主流移动开发的Android系统。在Win7电脑安装JDK开发包,配置并调试Java环境变量,从互联网上下载最新的Android sudio安装包及软件开发工具包SDK等。这样软硬件环境配置都非常便利,再加上开发人员的技术较成熟,故该系统设计能够按期完成。

综上所述,该项目的开发是完全可靠的。

2 系统功能主要模块设计

2.1 系统功能框架结构

该科研管理系统主要由客户端和服务器端来实现科研信息的管理。客户端主要负责提交数据,在本地浏览查看已经提交的数据,以及接受服务器端的反馈结果。服务器负责接收客户端请求、处理中间业务逻辑和访问数据库。数据库服务负责访问数据库和可备份等操作。系统功能结构框架如图2所示。

2.2 客户端功能设计

根据需求分析,可以将客户端分为下述几个模块。

图2 系统功能框架

(1)登录。教师或学生通过客户端登录系统,管理员通过服务器登录系统。

(2)科研统计。普通用户(教师、学生)提交承担项目、科研获奖、学生参赛等信息,管理员查看、修改这些信息。

(3)项目申报/审批。用户提交数据到服务器,服务器反馈审批数据给各个用户。

(4)报销费用。用户提交报销申请,管理员接收到报销申请数据,把结果返馈给用户。

(5)更改资料。更改完自己的信息,通过后台上传到服务器保存。

(6)退出登录。从服务器退出科研管理系统。

2.3 服务端框架搭建

该科研管理平台后台服务器采用SSH框架搭建,只进行后台数据处理,不具备界面浏览功能,使用Tomact本地服务器发布,通过客户端进行联网访问。SSH框架的系统分为表示层、业务逻辑层、数据持久层和域模块层四个层面。这四个层面,具有结构清晰、可复制性好和维护方便的优势,有助于开发人员快速建立一个Web应用程序。

使用Struts2作为整体基础框架,其职责是负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理Struts和Hibernate。具体做法是用对象的分析方法根据需求提出一些模型,将这些模型用基本的Java对象来封装,然后编写基本的 DAO(Data Access Objects)接口,并给出Hibernate的DAO实现方法,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring做管理,管理Struts2和Hibernate。

3 系统数据处理

3.1 后台系统数据库管理方案

系统数据库采用Hibernate进行管理,采用MySql进行数据储存。Hibernate是针对数据库管理的开源框架,本质也是对象关系映射框架。其原理是对HDBC进行对象封装,这样一来,开发人员可以根据自己的需求针对对象进行数据库操作。不仅如此,Hibernate可以应用在任何使用JDBC的场合,同时Hibernate更强大的地方在于它可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

Hibernate的核心和类接口包括Session、SessionFactory、Query、Criteria、ransaction、Configuration,而且这6个核心和类接口在任何开发中都会使用到,通过这些接口,开发人员不但能够对事物进行控制,还可以存储不变的对象数据。

通过config.properties实现Hibernate和MySql的连接,主要代码为:

hibernate.dialect=org.hibernate.dialect.MySQLDialect

driverClassName=com.mysql.jdbc.Driver

validationQuery=SELECT 1

jdbc_url=jdbc:mysql://localhost:3306/sshe?use-Unicode=true&characterEncoding=UTF8&zeroDate-TimeBehavior=convertToNull

jdbc_username=root

jdbc_password=920417

3.2 服务端数据返回处理

服务端处理数据以防止客户端解析不兼容,同样采用Gson将数据封装成Json格式,同时,打印该Json语句。服务端数据处理流程如图3所示。

数据库返回数据封装代码为:

Json j=new Json();

if(s!=null) {j.setSuccess(true);

j.setMsg("success");

j.setObj(s);

HttpSession session = Servle

tActionContext.getRequest()

.getSession();

session.setAttribute("User",s);

}else{

j.setMsg("fail");

图3 服务端数据处理流程

}

Json数据的返回代码为:

public void writeJson(Object object) {

try{

Gsongson=new Gson();

String json=gson.toJson(object);ServletActionContext.getResponse().setContentType("text/html;charset=utf-8");

ServletActionContext.getResponse().getWriter().write(json);

ServletActionContext.getResponse().getWriter().flush();

ServletActionContext.getResponse().getWriter().close();

}catch(IOException e) {

e.printStackTrace();

}

}

3.3 客户端数据处理

客户端对数据的处理采用Gson解析,将Json直接解析成Model方便存储,由于服务端返回数据比较多变,所以客户端应采用泛型的形式,直接解析数据,关键方法为:

public〈T>List〈T>getList(String json,Class〈T> class1) {

List〈T> list=new ArrayList〈T>();

try {JSONObjectjo=new JSONObject(json);

booble b=jo.getJSONObject("success");

JSONArray array=priseTemp1.getJSONArray("obj");

Gsongson=new Gson();

for(int i=0;i 〈array.length();++i) {

String s=array.get(i).toString();

Object object=new Object();

object=gson.fromJson(s,class1);

list.add((T) object);

}

return list;

}catch(JSONException e){

return list;

}

}

此段代码主要是利用泛型解析,首先解析success字段,之后解析obj得JSONArray,通过泛型得到list列表,再根据list列表可以将这些数据展示到用户界面。

4 结论

科研管理系统平台开发的目的是协助管理人员管理科研信息。结合高校自身科研管理的实际情况,开发出一款适合本校科研管理平台使用的软件,不仅可以很方便地统计科研信息,还可以对一些科研工作进行规划整理,进而提高科研管理者的工作效率,也有利于实现校园数字化办公。同时,能够有效地对学生进行科研引导,提高师生开展科学研究的积极性。

[1]龙涛.基于SSH框架的民办高校科研管理系统设计与实现[J].信息化建设,2015(8).

[2]李刚.疯狂Java讲义精粹[M].北京:电子工业出版社,2014:103-120.

[3]Reto Meier.Android 4高级编程(第三版)[M].北京:清华大学出版社,2013:41-63.

[4]陈德.Android优化技术详解[M].北京:清华大学出版社,2014:85-200.

[5]陈晔.大话移动APP测试[M].北京:清华大学出版社,2014:34-123.

Design and Implementation of Information Management Platform for University
Teachers and Students Scientific Research Team

ZHU Ping,SUN Xing-hua
(College of Information Science and Engineering,Hebei North University,Hebei Zhangjiakou 075000,China)

Through analyzing and using the classic MVC layered architecture design model,the information management system suitable for university teachers and students scientific research team is pre-opened.The system based on Android platform can realize some module functions such as statistical work of scientific research information,project declaration,and expense reimbursement.It can inquire and feedback all kinds of scientific research results at any time and place.It effectively improved the work efficiency of colleges.

Information management platform;Android;Research management system;MVC

TP311

A

1673-2022(2017)04-0005-04

2017-08-03

朱萍(1980-),女,河北张家口人,讲师,硕士,研究方向为信息管理;孙新华(1977-),男,河北张家口人,副教授,硕士,研究方向为信息管理。

猜你喜欢
客户端管理系统服务器
基于James的院内邮件管理系统的实现
通信控制服务器(CCS)维护终端的设计与实现
如何看待传统媒体新闻客户端的“断舍离”?
PowerTCP Server Tool
基于LED联动显示的违停管理系统
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
大枢纽 云平台 客户端——中央人民广播电台的探索之路
海盾压载水管理系统
得形忘意的服务器标准