《新农职院科研信息管理系统的设计方案与实现--科研信息管理系统-毕业论文.doc》由会员分享,可在线阅读,更多相关《新农职院科研信息管理系统的设计方案与实现--科研信息管理系统-毕业论文.doc(40页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、新疆农职院科研信息管理系统的设计与实现 何毅专业:计算机应用 班级: 08高职计算机应用 编号:新疆农业职业技术学院信息技术学院毕业论文新农职院科研信息管理系统的设计与实现学 院:信息技术学院专 业:计算机应用姓 名:xx班 级:2008高职计算机应用班指导教师:李欣二一 年 十一 月 十九 日目录摘要4引 言5第一章 开发工具及相关介绍61.1 开发运行环境61.2 相关知识点介绍61.2.1 Eclipse61.2.2 MYSQL61.2.3 Tomcat61.2.4 MVC模式6第二章 系统需求分析72.1 任务概述72.1.1 目标72.1.2 建设内容72.1.3 系统实现目标82.
2、2 用户特点8第三章 科研信息管理系统主要模块详细设计83.1系统结构设计83.2 子模块的设计93.2.2 项目管理模块93.2.3 成果管理模块93.2.4 经费管理模块103.2.5 统计查询模块103.2.6 系统设置模块103.2.7 用户管理模块103.3 系统的目录组织结构图103.4 数据库选择与设计113.4.1 系统的E-R图114.4.2 MySQL数据库中创建表及插入数据12第四章 科研信息管理系统的实现174.1 系统的主界面:174.2 项目管理模块的实现:174.2.1 项目的添加:174.2.2 项目的修改184.2.3 项目的浏览184.2.4 项目的删除19
3、4.3 经费管理模块的实现:204.3.1 项目经费登记功能204.3.2 经费修改功能204.3.3 经费删除功能214.3.4 经费浏览功能214.4 用户管理模块实现224.4.1 用户登录224.4.2 用户的注册224.4.3 用户的删除234.4.4 用户的修改23第五章 总 结24致 谢25参考文献26附录27Com.connDB.java27Com. PageResultSet.java27IMoneyDB.java29Money.java29MoneyDB.java30IProjectDB.java33Project.java33ProjectDB.java34IUserDB
4、.java34User.java34UserDB.java35摘要现代高等学校开发科研信息管理系统对加强科研管理非常迫切和需要,而科研信息管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库,而对于后者则要求应用程序功能完备,易使用等特点。在本论文中,主要从以下的几个方面对新农职院科研信息管理系统进行介绍:首先介绍了系统开发工具的运行环境、功能和特点。系统使用MyEclipse作为前台开发工具,使用MySQL作为系统数据库。接着详细的论述了系统的需求分析,即建设的内容、目标和用户特点
5、等。接着对系统的主要模块的功能进行了阐述,其主要功能是项目的管理、成果的管理和经费的管理,实现信息登记,其中包括项目登记、论文登记、成果登记等的登记;实现信息查询,其中包括论文信息、成果信息、经费信息等的查询;实现对系统库的维护。同时有实现用户登录、用户查询以及修改用户信息。然后,介绍了系统整体结构和数据库设计,并给出了主要数据库表的详细定义以及ER图进行解释说明。最后,说明了系统的模块组成,主要模块的功能,以及这些模块的具体实现方法和程序核心代码 ,并附带了一些主要的窗口。主要采用MVC模式进行开发,主要采用JSP+ MySQL的方式,其具有安全可靠、简单易用、跨平台性等特点。关键词: 科研
6、信息管理、JSP、MySQL、MVC;引 言随着人类社会的不断进步,计算机技术的广泛应用以及现代社会信息量的急剧增加,科学技术有了长足的发展,尤其是在当今这个知识经济时代,知识的大爆炸带来全球网络的飞速发展,网络为科技的发展做出了巨大的贡献。对于一些高校来说科研工作更是一项非常重要的事情,而目前许多的高校任处于手工管理阶段,传统的人工信息管理体系已经远远不能满足快节奏、高效率的现代生活的需要,落后的管理技术严重阻碍了信息的交流与共享。同时,网络技术的普及,如何通过网络来实现对高校科技信息的远程访问和与远程管理,从而实现对信息的共享和交流成为当务之急。同时,国家科教兴国战略的制定和西部大开发战略
7、的深入实践,我国高校有了历史性的发展,为科研工作的迅速发展奠定了基础。随着科研规模的不断扩大和科研管理水平的不断提升,以及高校科研成果数量增加较快,教师的科研内容较为复杂,涉及范围极其广泛,而且为了公平合理的推动教师队伍的科研学建设,为今后科研信息的查找提供方便、快捷的服务,鉴于此目的基于JSP技术的科研信息管理系统为我们提供了强有力的应用工具。该系统可以达到用户检索迅速,查找方便,录入简单,可靠性高,存储量大,保密性好的要求。科研信息管理是高等教育中的一个重要环节,是整个院校管理的重要的一部分。随着学校师资力量逐渐加强,面对种类繁多的数据和报表,手工处理方式已经很难跟上现代化管理的步伐,随着
8、计算机及通讯技术的飞速发展,高等教育对科研成果管理工作提出了更高的要求。传统的管理方法、手段以及工作效率已不能适应新的发展需求,无法及时准确地打印出所需的报表,尽快改变传统的管理模式,运用现代化手段进行科学管理,已经成为整个教育系统亟待解决的课题之一。科研信息管理系统对这种状况有很大的改进,可以实现科研工作的网络化管理,形成一个动态的科研数据中心和科研管理沟通平台,全面、实时、准确提供学校的有关科研信息,服务于高校科研工作人员的工作,辅助领导进行科研管理决策,从而为科研管理人员开展工作提供极大的便利。不但提高了工作的效率,而且方便了人员的管理以及老师对科研的申报等。这使得只要有网络的地方,你就
9、能方便的管理自己的科研项目、登记自己的项目、管理科研的经费等,为学校的科研工作节省了很大的开支,也将学院的科研工作提到了很大的一个平台上。第一章 开发工具及相关介绍1.1 开发运行环境本系统是以Windows系统为操作平台,开发环境搭建: Eclipse+ MyEclipse + Tomcat5.0 + j2sdk;服务端采用MySql数据库,Tomcat服务器;客户端采用JDBC接口,利用java,JSP作为设计,完成一个可移植的、安全的科研信息管理系统的设计与实现。1.2 相关知识点介绍1.2.1 EclipseEclipse是一个开放源代码的、基于Java的可扩展开发平台。就基本身而言,
10、它只是一个框架和一组服务,用于通过插件组件构建开发环境,幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具。Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前也有人通过插件使其作为其它计算机语言比如C+和Python的开发工具,Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其它功能相对固定的IDE软件很难有灵活性,所以许多软件开发商以Eclipse为框架开发自己的IDE。兼于此,选择Eclipse为开发环境。1.2.2 MYSQLMYSQL 是Microsoft 公司推出的MYSQL 数据库管理系统
11、的新版本。该版本继承了MYSQL 7.0 版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等优点。可跨越从运行Microsoft Windows 98 的膝上型电脑,到运行Microsoft Windows 2008 的大型多处理器的服务器等多种平台使用。1.2.3 TomcatWeb应用服务器:Tomcat5.0及其以上版本。其功能强大、方便易用,适应于中小型系统的开发。同时Tomcat可以从网站免费下载。从而降低开发成本。1.2.4 MyEclipseMyEclipse,是一个十分优秀的用于开发Java, J2EE的Eclipse插件集合,MyE
12、clipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。1.2.5 MVC模式MVC架构是Model-View-Controller的缩写,
13、中文翻译为模型-视图-控制器。MVC应用程序总是由这三个部分组成。Event(事件)导致Controller改变Model或View,或者同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己。MVC三个部分在J2EE架构中处于什么位置,这样有助于我们理解MVC架构的实现。MVC与J2EE架构的对应关系是:View处于Web Tier或者说是Client Tier,通常是JSP/Servlet,即页面显示部分。Controller也处于Web Tie
14、r,通常用Servlet来实现,即页面显示的逻辑部分实现。Model处于Middle Tier,通常用服务端的javaBean或者EJB实现。 图2-1 MVC流程图第二章 系统需求分析目前,随着信息技术的飞速发展,高校的科研工作量以及科研的项目不断的扩大,原来的人工方式进行管理已经不能满足需要了,这样的方式也存在很多的缺陷,比如:科研管理者的负担和工作量加大;科研工作的效率不高;科研信息不能实时的发布等。为了弥补上述的不足之处,便于科研工作者的需求,提高科研的质量,提高科研的管理效率,从而开发了科研信息管理系统,以实现方便、高效、合理的管理。通过调研之后,对科研信息管理系统的设计开发做了一个
15、详细的概述。2.1 任务概述2.1.1 目标科研信息管理系统是新疆农职院各级科研工作者进行交流的平台,目标是实现科研项目管理、科研成果管理、科研经费管理、信息统计及综合查询。实现各分院(教师个人)申报科研项目(成果),科研处审批设置的工作流程。实时统计打印项目信息和成果等,统计分析科研工作量,设置各种标准和编码,系统也设置了人性化的项目结题提醒以及消息系统。解决学院科研信息发布、工作流转、交流沟通、科技统计上报等问题,提升工作效率,畅通学院内部的信息交流与共享以及与全国普通高等学校科技统计年报系统的结合。2.1.2 建设内容系统数据流图:图3-1数据流图科研信息管理系统为两层B/S结构的应用系
16、统,通过Web浏览器即可进行所有的科研项目管理、成果管理、经费管理、综合统计、科研通信等工作。系统利用Intranet建立有效的行政办公体系,为提高学院科研管理工作效率服务。同时,根据数据流图可将其划分为如下几个主要模块如图3-1所示:图3-2系统主要模块图2.1.3 系统实现目标a、系统内各种信息资源的共享。b、加强用户间的交流、提高整体工作效率。c、提供信息发布记录,以备事后查询,方便领导及时了解内部科研情况,为领导决策提供数据支持。d、方便科研人员对自己的科研项目、论文、成果及经费等进行查询和管理。2.2 用户特点科研信息管理系统将面向新疆农职院使用,本系统采用B/S结构,使用方法类似平
17、时的上网,对用户要求不高,如用户没有上网经验,只需简单培训即可上手使用本系统。其操作人员是学院各级管理部门工作人员、科研人员用户及学院领导等。第三章 科研信息管理系统主要模块详细设计3.1系统结构设计本子系统的模块可以分为项目管理、成果管理、经费管理、统计查询、系统设置、用户管理等六部分组成。系统结构如图4-1所示:图4-1 系统结构图3.2 子模块的设计系统为用户提供统一的科研项目管理与统计信息系统资源的访问入口,用户只需从门户系统中选择正确的角色登录,即可漫游访问科研项目管理与统计信息系统中集成的所属权限下的各种信息资源和管理系统。用户登录后即可显示用户有权访问的业务系统,用户可直接访问相
18、关的功能,获得项目数据,而无需在系统中重新登录。3.2.2 项目管理模块l 项目浏览:可以分为三种方式浏览(按单位个人、按项目类别和按项目来源)。l 项目统计报表:提供多种形式的统计查询,查询的数据可以导出到Excel表中,也可生成报表直接打印或导出为Word、PDF等格式用于排版和编辑。l 项目查询:主要是对上传项目、论文等进行登记和浏览等管理。3.2.3 成果管理模块l 成果浏览:主要是方便用户对科研成果的管理、浏览,也可实现成果的简单统计,可分为两种方式(成果的分类方式和单位个人方式)。 l 成果登记:用户可根据具体的情况管理论文、相关证书图片的上传等,可以分为(论文登记窗口、获奖登记窗
19、口、著作登记窗口、鉴定登记窗口、专利登记窗口、软件登记窗口)。 l 成果入库:主要是实现对各二级单位登记成果的二级审核入库工作,可将审核过的内容永久加入到数据库中。l 成果统计报表:该功能设计了多种成果统计查询功能,可以将查询的数据以Excel、PDF、Word格式导出或直接生成表报打印。 3.2.4 经费管理模块l 经费设置:用户可以登记项目经费的拨入和拨出,同时提醒项目的主持人经费已拨入和拨出。l 经费浏览:该功能实现对单位个人所属项目的经费信息进行查询和统计。 l 经费统计报表:该功能实现用户统计项目的经费,可以导出Excel,或者打印报表。 3.2.5 统计查询模块l 查询项目:该功能
20、实现用户自定义查询条件,查询项目数据,并可以导出或者打印结果。 l 查询成果:该功能实现用户自定义查询条件,查询成果(论文、获奖、鉴定、著作、专利、软件登记)数据,并可以导出或者打印结果。 l 科研工作量:该功能主要是为了统计某个单位个人的科研情况(项目、成果),既可以查询全部数据,也可以指定某个时间段进行查询。可以将结果导出Excel,或者打印报表。 3.2.6 系统设置模块l 系统初始化:对系统数据进行清零处理。l 代码维护:对项目代码、类别代码、学院代码等进行维护和管理。l 人员库维护:增加人员、删除人员等。l 权限设置:对项目权限、统计权限、成果权限等进行设置。3.2.7 用户管理模块
21、l 添加用户:添加新的用户。l 修改用户:对用户进行密码等修改。l 删除用户:删除用户。l 用户登录:对用户的登录进行管理。3.3 系统的目录组织结构图本系统的目录组织结构如图4-2所示:图4-2:系统目录组织结构图3.4 数据库选择与设计数据库是数据管理的最新技术,是计算机科学的重要分支。十年来,数据库管理系统已从专用的应用程序包发展成为通用系统软件。由于MySql数据库具有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在MySql数据库设计之上的。它可以在不同的环境下工作,包括移动计算环境、嵌入式数据库和工作组服务器,能存放和读取大
22、量的数据,管理众多并发的用户,故选用MySql数据库。3.4.1 系统的E-R图该系统包含的实体主要有:项目、用户、成果、经费等,下面就以用户表与项目表将分别介绍各实体及实体间的E-R图用户的E-R图,如图4-3所示:图4-3:用户E-R图项目表E-R图,如图4-4所示:图4-4:项目表E-R图经费表E-R图,如图4-5所示:图4-5:经费表E-R图4.4.2 MySQL数据库中创建表及插入数据系统其中主要的8张表:用户基本信息表、角色表、权限表、项目表、成果论文表、成果获奖表、经费表,下面将对其中的项目表如表4-1、用户基本信息表如表4-2、经费信息表如表4-3、成果获奖信息表如表4-4、成
23、果论文信息表如表4-5、权限表如表4-6进行详细介绍。表4-1:项目表字段名称数据类型字段大小是否主键是否为空备注IDInt10是否编号Kindvarchar255否否项目类别Sourcevarchar100否否项目来源Levelvarchar100否否项目级别contentString255否否项目内容Project_numberint20否否项目编号name varchar50否否项目名称begin_dateDate20否否起研日期end_dateDate20否否止研日期directorVarchar50否否主持人institutionVarchar50否否主持单位建立本表的SQL语句如下
24、:create table project(id int(10) NOT NULL auto_increment,kind varchar(255) default null,source varchar(100) default null,level varchar(100) default null,content text,project_number varchar(20) default null, name varchar(50) default null, begin_date DATE NOT NULL DEFAULT 0,end_date DATE NOT NULL DEFA
25、ULT 0,director varchar(50) default null,institution varchar(50) default null,primary key (id);表4-2:用户基本信息表字段名称数据类型字段大小是否主键是否为空备注IDInt10是否编号SIDvarchar255否否系统IDName varchar100否否姓名Sex varchar4否否性别Nation varcha4否否族别Education varcha20否否学历Mobilevarcha50否否移动电话Email varcha50否否电子邮件IDCard varcha20否否身份证号建立本表的S
26、QL语句如下:CREATE TABLE member_info ( id int(10) unsigned NOT NULL auto_increment, sid varchar(255) default NULL, name varchar(100) default NULL, sex varchar(4) default NULL, nation varchar(4) default NULL, education varchar(20) default NULL, email varchar(50) default NULL, mobile varchar(50) default NU
27、LL, idCard varchar(20) default NULL, primary key (id);表4-3:经费表字段名称数据类型字段大小是否主键是否为空备注IDInt4是否编号namevarchar50否否项目名称earnings_expensesvarchar10否否收入或支出amountvarchar50否否金额contenttext否否经费内容Project_numbervarchar50否否项目编号certificate_NOvarchar50否否凭证号dateDate否否日期memotext否否备注ifNoticeVarchar4否否是否通知主持人建立本表的SQL语句:c
28、reate table funding(id int(4) NOT NULL auto_increment, project_NO varchar(50) default NULL, name varchar(50) default NULL, earnings_expenses varchar(10) default null, date DATE NOT NULL DEFAULT 0, amount varchar(50) default NULL, certificate_NO varchar(50) default NULL, content text, memo text, ifNo
29、tice varchar(4) default NULL,primary key (id);表4-4:成果获奖信息登记表字段名称数据类型字段大小是否主键是否为空备注IDInt10是否编号consequent_numbervarchar50否否成果编号contextText否否获奖内容namevarchar255否否获奖名称levelvarchar50否否获奖等级kindvarchar100否否等级类别modusvarchar255否否成果形式dateDate否否获奖日期institutionVarchar100否否颁奖单位personVarchar255否否总人数picVarchar255否否
30、图片预览建立本表的SQL语句:CREATE TABLE consequent_awards( id int(10) unsigned NOT NULL auto_increment, consequent_number varchar(50) default NULL, context text, name varchar(225) default NULL, level varchar(50) default NULL, kind varchar(100) default NULL, modus varchar(225) default NULL, date DATE NOT NULL DE
31、FAULT 0, institution varchar(100) default NULL, person varchar(225) default NULL, pic varchar(100) default NULL,primary key (id);表4-5:成果论文信息登记表字段名称数据类型字段大小是否主键是否为空备注IDInt10是否编号consequent_numbervarchar50否否成果编号name_cnvarchar50否否论文名称levelvarchar50否否获奖等级kindvarchar100否否论文类别subject_kindvarchar50否否学科类别dat
32、eDate否否发表日期periodical_cnVarchar50否否期刊名称cycleVarchar50否否期数pageVarchar50否否页数publication_numberVarchar50否否出版号publication_placeVarchar50否否出版地建立本表的SQL语句:CREATE TABLE consequent_dissertatlon ( id int(10) unsigned NOT NULL auto_increment, consequent_number varchar(50) default NULL, name_cn varchar(50) defa
33、ult NULL, level varchar(10) default NULL, kind varchar(50) default NULL, subject_kind varchar(50) default NULL, date DATE NOT NULL DEFAULT 0, periodical_cn varchar(50) default NULL, cycle varchar(50) default NULL, page varchar(50) default NULL, publication_number varchar(50) default NULL, publicatio
34、n_place varchar(50) default NULL, pic varchar(100) default NULL,primary key (id) );表4-6:权限表字段名称数据类型字段大小是否主键是否为空备注IDInt10是否编号sidvarchar10否否系统编号purviewvarchar255否否权限建立本表的SQL语句:create table member_purview(id int(4) NOT NULL auto_increment,sid varchar(10) default null,purview varchar(255) default null,p
35、rimary key (id);第四章 科研信息管理系统的实现4.1 系统的主界面:通过用户名登录以后进入,可以浏览使用的用户名,以及今天的日期;可以实现一些通知公告的浏览、友情链接、以及一些功能的导航页面。如图5-1所示:图5-1 首页主代码: TD valign=middle width=70 height=24 background=/images/eindex_bg3.gifA href=/index.jsp class=style1首页 TD valign=middle width=70 height=22 background=/images/eindex_bg3.gifA hre
36、f=/checkOut/listSubByUser.jsp target=_blank项目查询 TD valign=middle width=70 height=22 background=/images/eindex_bg3.gifA href=/cart/order.jsp target=_blank成果查询 /日期显示 tmpDate = new Date();date = tmpDate.getDate();month= tmpDate.getMonth() + 1 ;year= tmpDate.getYear();document.write(year);document.write
37、(年);document.write(month);document.write(月);document.write(date);document.write(日);myArray=new Array(6);myArray0=星期日;myArray1=星期一;myArray2=星期二;myArray3=星期三;myArray4=星期四;myArray5=星期五;myArray6=星期六;weekday=tmpDate.getDay();if (weekday=0 | weekday=6)document.write(myArrayweekday);elsedocument.write(myAr
38、rayweekday); 4.2 项目管理模块的实现:主要代码:import java.util.Collection;public interface IProjectDB /添加项目public int addProject (Project projects);public class Project private int linkId; public Project (int ld, String lt) this.linkId = ld; this.linkTitle = lt; this.kind=kd; this.linkLevel=lv; 使用了IProject接口、proj
39、ect类、ProejctDB类等进行后台的处理。4.2.1 项目的添加:该页面主要实现项目的详细信息的添加,最后保存到数据库中。如图5-2所示:图5-2 项目添加页面4.2.2 项目的修改该页面主要是从数据库中调出数据,进行项目的修改。如图5-3所示:图5-3 项目修改页面4.2.3 项目的浏览该页面主要实现从数据库调出项目,将数据库的信息呈现给用户。如图5-4所示:图5-4 项目浏览页面4.2.4 项目的删除该页面主要实现项目的删除,通过项目的编号、名称调出数据并删除。如图5-5所示:图5-5 项目删除页面4.3 经费管理模块的实现:主要代码:import java.util.Collect
40、ion;public interface IMoneyDB /获取经费的详细信息public Money getMoney (int id); /添加经费public int addMoney (Money moneys);/删除项目经费public int deleteMoney (int id);/修改项目经费public int modifyMoney (Money moneys);/项目经费查询列表public Collection getMoney (); /添加查重public boolean find(String key); /修改查重public boolean isModi
41、fy(String key,int id);public class Money private int linkId;private int project_number;private String name=null; private String earnings_expenses = null; public Money (int ld, int pn, String na, String ee, int bd, float at, int cn, String ct, String mo, String in) this.linkId = ld; this.project_number=pn; public int getLinkId () return this.linkId; public void setId(int ld) this.linkId=ld;使用了IMoney接口、Money类、MoneyDB类等进行后台的处理。4.3.1 项目经费登记功能该页面主要实现项目的经费登记。如图5-6所示:图5-6 经费登记页面4.3.2 经费修改功能