基于JSP的大学生活动管理平台的设计与实现

2019-02-08 07:35袁嘉欣马佳琳
软件工程 2019年1期
关键词:数据库大学生

袁嘉欣 马佳琳

摘  要:现如今,当代大学生活动十分多元化。在这样的背景下,建立一个大学生活动管理平台势在必行。本文中的平台包括了大学生活动的宣传、管理、报名等多项功能,在高校活动管理任务中,使学生工作更加高效化,也方便了大学生们对各种活动的了解和报名。本文就对此平台的整体设计及实现过程中应用到的HTML5、JSP、数据库等相关技术进行介绍和说明。

关键词:大学生;活动管理平台;JSP;数据库

中图分类号:TP315     文献标识码:A

Design and Implementation of the College Student Activity

Management Platform Based on JSP

YUAN Jiaxin,MA Jialin

(Institute of Software,Shenyang Normal University,Shenyang 110034,China)

Abstract:Nowadays,the activities of contemporary college students are very diverse.In this context,it is imperative to establish a college student activity management platform.The platform in this paper includes a number of functions such as publicity,management and registration of college student activities.This platform improves the efficiency of student work in college activity management,and also facilitates college students' understanding and registration of various activities.This paper introduces and explains the application of HTML5,JSP,database and other related technologies n the overall design and implementation of this platform.

Keywords:college student;activity management platform;JSP;database

1   引言(Introduction)

在如今“堅持科学发展观,倡导大学生全面发展”的时代背景下,大学生活也变得越来越丰富。同时,随着我国信息化技术的不断发展,传统的方式已经无法满足现在的需求,因为大量的学生活动和比赛之后,便是大量的数据支撑,学生工作也就随之变得逐渐沉重起来[1,2]。因此,高校学生活动管理的信息化这一工作就显得越来越势在必行。

当代大学生缺少一个主动了解并自主报名各项活动和比赛的一个便捷途径,为了方便大学生可以更好地了解并参加到大学活动中,来拓展自己的知识、锻炼自己的能力,就需要一个整合了各类活动信息的线上平台。同时,又希望能够促进高校活动管理更加地规范化和高效化。所以希望通过建设一个大学生活动管理平台来实现这样的目的。

2   背景分析(Background analysis)

2.1   需求分析

在时代发展进程中,朝气蓬勃的学生群体对于越来越多的事物产生了向往,也便产生了越来越多多元化的学生活动。为了学生能够更好、更方便地参加到各种各样的校园活动和比赛中去,所以希望建立一个包含活动信息,以及能满足学生自主了解和报名功能的一个平台[3]。

系统的总体设计,需要实现系统功能性的划分,确定模块的层次结构。系统模块功能的实现,要结合系统软件的明确、多功能的需求,对传递接口要明确,不断完善系统的关系把握,对系统的模块划分工作要不断进行评估,从而确定一个完整的系统的多功能模块结构[4],才能对系统接下来有更进一步的详细设计。所以首先,根据对大学生活动管理方面工作需求的调查、分析,对整个系统的角色分配和相应权限做出如下功能划分。大学生活动管理平台系统的权限划分上主要分为前端和后台两大部分。前端中又分为学生和活动方,而后台中便是系统的管理员。其中学生中共包括五大功能模块:登录模块、活动信息浏览模块、报名或推选活动模块、查看个人信息计划模块、密码修改模块。活动方包括四大功能模块:登录模块、活动信息增删改模块、参加学生管理模块、密码修改模块。而后台中的管理员则包括四大功能模块:登录模块、校园新闻增删改模块、推荐活动增删改模块,以及用户管理模块,其系统功能模块图详见图1。

由此可见,从管理者的角度来说,可以更加方便地进行活动的发布、多元化地进行活动宣传、活动的管理,以及统计等方面的工作压力也可以得到减轻;而从参与者的角度来说,校内外各方的活动及比赛的信息一目了然、不再混乱,方便同学们自主地了解和参加,又可以随时通过时间表的形式查看自己的活动行程安排,十分得便捷。本文中大学生活动管理平台的具体内容包含如下:

(1)不同角色的不同权限活动管理:在登录时对用户进行权限的区分,区别为管理员和用户,不同的角色会进入到不同的页面中。

(2)活动管理:管理者进行各种活动信息的发布、宣传和后期统计工作。

(3)报名流程管理:在这里,学生们能够更加清晰,及时地获取到校内外活动及比赛的信息,并对感兴趣的活动进行报名。

(4)报名结果展示管理:报名之后,学生们也可以在个人中心方便地浏览自己的各项信息,以及报名的结果等,也可以根据自己的情况进行退选等一系列操作。

(5)其他周边功能:同时,本平台又具备一些其他的拓展功能来支持活动更顺利地开展。比如,现在很多活动仍然采用着纸质投票,这实际上是一种资源的浪费,本平台倡导使用线上投票来替代,更加利于活动举办方工作人员统计结果的同时,又能更加环保。除此之外,还有一些活动情况转播等等多项其他支持功能。

2.2   国内外研究现状

我国随着信息化技术的不断发展,对于活动管理这个领域便有了一些实际的应用。比如国内一些企事业单位,就有着自己的会议或活动管理平台,平臺中发布了会议,以及一些其他活动的信息,员工可以在该平台方便地查看及报名,会议管理者能够直接对与会人员进行统计,员工们又能在闲暇时间参加公司平台上组织发布的其他拓展活动等。

随着近几年对于大学生全面发展的需求的重视度得到提高,一些人对于大学生活动管理的领域有了一定的探索,但是对于线上的大学生的活动管理平台,还有待继续建设和完善。比如,现有的一些活动管理平台上功能都不甚齐全——没有取消报名功能、无更多的群组交流方式,以及没有更多的相关支持拓展功能。而在美国,已经有高校投入了此类管理平台的使用,并且得到了一致的认可和好评。

3   系统的设计(Design of system)

3.1   数据流分析

作为一个大学生活动管理平台,平台中也就囊括了学生信息、管理员信息、各项活动比赛的信息等众多数据,而对这些数据的管理和操作也就成为了本平台系统的核心部分,对系统进行实现之前就要先有良好的设计,所以在这里通过结构化方法对本系统的数据,以及它们的流向进行分析。活动方与平台之间主要进行一些活动信息和报名人员信息的交互,学生向平台上传个人信息、从平台端获取活动信息并且进行报名,而管理员负责网站中新闻资讯等辅助项目的建设,以及对网站的用户进行有效的管理。其顶层数据流图详见图2。

3.2   网页设计

大学生校园活动主要分为活动和比赛两个部分,其中两者都可以再由“校内外”作为标准进行划分。由此,本平台的主页主要分为四个模块:本校活动、外校活动、比赛资讯和个人中心。

(1)本校活动模块:这里包含了大量的校内活动。在这里的各项活动信息,是由活动方进行编辑和上传的。而活动参与者可以方便地在这里进行校内活动信息的浏览,包括主题、简介、时间、地点、容量、所属组织、负责人,以及其他各项备注等,也可以对活动包含的关键词在首页进行搜索而直接找到指定的活动。使用者们如果有感兴趣的活动,可以进行收藏和报名,并且在报名成功后会得到相应的反馈,例如加入对应的群组并在活动开始前得到相应的提醒等。同时在各个活动中,本平台也包括了一些支持活动过程中的其他需求的相关功能,比如活动实况直播,以及采用活动线上投票取代了现在一些活动中的纸质投票等,如有需要,可以由活动方进行发起。

(2)外校活动模块:与本校活动同理,其中包含的是外校的各项活动的具体信息。同学们也可以在本平台进行校外活动的了解和报名。

(3)比赛资讯模块:在这里,大学生们可以对一些校内外的比赛进行了解和报名。校内的活动可以在本平台下载报名表直接进行报名。而对于校外的活动,本平台也提供了更加简洁明了的了解渠道,也会给出各活动相应的报名链接,方便用户进行跳转来了解更多信息。

(4)个人中心模块:大学生们可以在这里随时查看自己所报名的活动,按照时间表的形式来查看自己的活动安排表。也可以在这里进行活动的退选,但是会给每一名学生规定一个退选次数上限,同时还会有一项“积分”的设定。积分可以通过同学们顺利参加活动而获取并累积,反之,退选会扣除次数和一定的积分,而报名后未进行退选就直接选择不参加活动,会扣除更多的积分。积分的设定主要是为了以此来衡量用户的信用程度,也可以增强大学生的责任感。

此外,在首页上的其他留白部分,由校园新闻和推荐活动来填补,这两者是由系统管理员进行编辑的。并且,在主页上也会直接设置一个搜索功能,让同学们可以更加方便地通过活动代号或名称,以及其他各种活动相关信息来快速找到指定的活动。同时,在网页整体外观的设计方面,本平台选用了白色、浅绿色、蓝色的搭配,整体给人一种清新、青春洋溢的感觉,符合当代大学生的审美需求,不插入过多的图片,以及过多的动画等,力求简洁。

4   相关技术介绍(Related technologies)

4.1   前端

在平台前端的编写上,选用了Adobe Dreamweaver CC 2017作为开发软件,“所见即所得”的界面设计给开发者带来了极大的便利。使用了HTML5语言进行编写。HTML5在标签上相较于HTML语言有一定的修改和完善。本文的平台建设中,充分利用其可以给站点带来更多多媒体元素等多项优势。在页面的布局上采用了CSS+DIV框架,这样会让网页的外观在整体的设计上达到整洁美观的效果,方便排版设计。同时插入了脚本语言JavaScript的使用。同时还使用了Photoshop和Flash等软件对在网站建设中要使用的图片和动画等进行编辑,达到页面更加美观的效果。

4.2   后台

本平台采用B/S(Browser/Server,浏览器/客户端)结构实现,利用MVC(模型—视图—控制器)三层框架对大学生活动管理系统进行设计,选用了MyEclipse作为开发平台,服务器采用Tomcat,使用的是JSP技术。JSP技术源于Java语言对Web网页的封装功能,是一种动态网页技术。其实简单一点来说,传统的HTML页面是一个静态页面,而如果想要向其中增加一些动态元素,就可以使用JSP技术向静态文件中加入一些Java程序片段和一些JSP的标记等,这样就可以成功构造出一个后缀为.jsp的动态网页文件[5]。

4.3   数据库

既然是一个管理平台,那么着重要实现的各种功能就依托于各种数据的管理,而数据库则是数据管理的核心,对数据库要进行一个良好的设计,以达到对数据的“增删改查”等有效操作的实现的目的。数据库设计的关键之处也就是在于数据表的设计,通过对系统需求整体的分析,来对数据表进行设计,在设计过程中,可以借助于三范式分析来减少冗余。同时要统一字段的命名规则,这样的话,会极大地方便数据库的最常用标准化语言——SQL语言的书写,以及后续的其他各种操作。在数据库的建立上,本文中的系统选用了Mysql,同时也使用到了数据库的可视化工具Navicat。Navicat让数据库的设计工作显得更加地直观,更加方便数据库工作人员进行各项操作。本平台中,将活动、比赛的信息,以及用户们的报名情况等等都记录在数据库的表中,与前台进行连接后能够更方便地进行“增删改查”等操作。

此外,Java中采用了JDBC技術来实现与数据库的连接。JDBC其实就是一组由Java语言所编写的接口和工具,对于编译人员来说是一个极其方便的连接数据库的方式。因为JDBC是一种标准的接口,所以只需要编写人员进行一次代码的编写,就可以在多种平台上运行,拥有很强大的兼容性。并且可以很轻松地实现发送要操作数据库的SQL语句,就能够进行相应的处理。与数据库连接代码:

public class javaTest {

public static void main(String[] args) throws ClassNotFoundException, SQLException  {

String URL="jdbc:mysql://127.0.0.1:3306/imooc?useUnicode=true&characterEncoding=utf-8";

String USER="root";

String PASSWORD="***";

//1.加载驱动程序

Class.forName("com.mysql.jdbc.Driver");

//2.获得数据库连接

Connection conn=DriverManager.getConnection(URL, USER, PASSWORD);

//3.数据库连接操作,连接后,实现对数据库中数据的各项操作

Statement st=conn.createStatement();

ResultSetrs=st.executeQuery("sql语句");

//4.数据库处理并返回结果

while(rs.next()){

System.out.println(rs.getString("user_name")+" "

+rs.getString("user_password"));

}

//关闭连接

rs.close();

st.close();

conn.close();

}}

4.4   JSP技术

本文所设计的大学生活动管理平台着重使用的技术为JSP技术。随着技术水平的发展,其实编写一个动态网页有很多种技术,比如ASP、PHP技术等,这几种技术都能在HTML中对执行程序代码进行一个有效的转换。但是,这几种方式不同的是,相对来说,ASP和PHP是在客户端解释下执行的,而JSP是在编译下执行的。由此,JSP技术的执行效率比较高,具有很好的安全性,并且JSP技术还具有很好的跨平台性。比如,可以用于有不同协议、组成的其他平台中,以及可重用Java Beans组件等等其他多项优点,这都是它值得选择的理由。JSP技术本身是依托于Java语言作为脚本语言的,于是也就基本囊括了JAVA所拥有的所有优点,如强大的存储管理和安全性等等。所以综上所述,JSP会是一个很好的选择。

而JSP技术的工作原理也并不复杂。当用户访问页面时,由客户端向Web服务器发送请求,在此时会根据用户是否是第一次访问该页面来区分。如果是首次访问,也就是说该文件还并未存在,就会耗费一定的时间来进行如下的过程:Jsp页面首先会被转化成为一个Servlet代码,即后缀名为.java的文件。接下来,JSP引擎会使用到Javac把Java文件编译为相应的源文件,即后缀名为.class的文件。而因为这些文件经过一次如上所述的编译过程后就会被存储于服务器的内存中,所以之后当用户再次访问该页面时,加载过程便会变得迅速很多。编译完成后,Web容器会加载编译后的代码并且进行执行[6,7]。其间,网页通过JDBC与数据库成功连通后,在网页上便可以直接与数据库中的数据进行交互,并根据权限,对数据库中数据表里存储的数据进行“增删改查”等一系列操作。最后在完成后,将最终的结果作为响应返还给客户端。Web与客户端交互工作原理图详见图3。

5   结论(Conclusion)

在信息化高度发展,以及倡导大学生全面发展的今天,大学生活动管理平台的建设拥有了条件,并且也显得很有意义。从参与者到管理者双方的角度,对大学生各类活动实现了“一站式”管理,对人力物力等资源能达到节约的效果、也能使学生工作真正高效化起来。

同时,也希望在大量的丰富多彩活动,以及各种比赛的支持下,能让越来越多的大学生放下手机、走出寝室,切实地参与到校园活动和比赛中去,增长见识、锻炼能力,都能够享受自己的青春,斑斓自己的大学生活。当然,本平台也存在着许多不足,而随着实践次数的增加和新的需求的出现,本平台也会一同不断完善,对本平台所使用到的技术也会不断地进行更新,为高校活动管理的信息化发挥出更大的作用。

参考文献(References)

[1] Ning Huang.Analysis and Design of University Teaching Evaluation System Based on JSP Platform[J].International Journal of Education and Management Engineering,2017(3):43-50.

[2] H.Y.Wang.Design and Implementation of the College's CPC-building System Based on the JSP[J].International Journal of Computing and Optimization,2016(3):121-129.

[3] 陈青,王泽宇,谢曦.新媒体在高校社团文化建设的新里程[J].学术探讨,2015(16):275-276.

[4] 袁永彦.基于JSP技术的体育用品管理系统的设计与实现[J].电子设计工程,2017(14):172-174.

[5] 解俊.基于JSP的企业管理信息系统的开发[J].办公自动化,2012(20):26-27.

[6] 何文辉.基于JSP的动态网页开发技术[J].吉林省教育学院报,2008(8):67.

[7] 曾志明.网站开发技术比较研究[J].电脑知识与技术,2010(5): 1075-1078.

猜你喜欢
数据库大学生
带父求学的大学生
大学生之歌
让大学生梦想成真
他把孤儿院办成大学生摇篮