您好,欢迎来到意榕旅游网。
搜索
您的当前位置:首页奖助学金管理系统论文

奖助学金管理系统论文

来源:意榕旅游网


分类号:

密 级:

LVLIANG UNIVERSITY

课程设计

题 目: 学生奖助学金管理系统设计与实现

系 别: 计算机科学与技术系 专业年级: 计算机科学与技术2011级(专升本) * *: *** 学 号: *********** ****: ***

2014年11月23日

吕梁学院本科毕业论文(设计)

学生奖助学金管理系统设计与实现

摘 要

本文介绍了学生奖助学金管理系统的整个开发过程,阐述了项目开发的背景、项目开发的目标及意义、系统分析、系统架构设计、系统详细设计和实现、系统测试的全过程。系统具有学生模块、辅导员模块、教务处模块、管理模块等功能模块,各模块有其相应功能,如辅导员功能够实现辅导员登录后进入辅导员模块,辅导员可对注册的学生进行增、删操作、可对学生的成绩和奖惩进行增、删、改、查,以及审核学生的资格,辅导员确认学生的信息无误后将审核通过的学生呈报给教务处等功能。本系统界面友好,操作简单,比较实用。

系统是使用JSP技术进行动态页面的设计,运用JavaBean对程序的关键代码进行封装,数据库采用Mysql,使用Java JDBC驱动程序连接数据库,Tomcat作为应用服务器。

关键词: 管理系统;JSP;JavaBean;数据库;JDBC

吕梁学院本科毕业论文(设计)

目 录

第1章 绪 论 .................................................... - 1 -

1.1 项目开发背景 ............................................ - 1 - 1.2 项目开发的目标 .......................................... - 1 - 1.3 项目开发的意义 .......................................... - 1 - 第2章 项目开发的技术基础 ....................................... - 2 -

2.1项目开发常用技术 ......................................... - 2 -

2.1.1 HTML语言概述 ...................................... - 2 - 2.1.2 JavaScript ......................................... - 2 - 2.1.3 JSP技术 ........................................... - 2 - 2.1.4 SQL语言介绍 ....................................... - 4 - 2.1.5 JDBC ............................................... - 5 - 2.2 搭建Java Web开发环境 ................................... - 5 -

2.2.1 安装预配置JDK ..................................... - 5 - 2.2.2 安装Java Web开发工具NetNeans ..................... - 6 - 2.2.3 安装MySQL及其开发环境 ............................. - 6 - 2.2.4 安装服务器Tomcat .................................. - 6 - 2.2.5 安装GlassFish ..................................... - 6 -

第3章 系统分析 ................................................. - 8 -

3.1 需求分析 ................................................ - 8 - 3.2 可行性分析 .............................................. - 8 -

3.2.1 技术可行性 ......................................... - 8 - 3.2.2 经济可行性 ......................................... - 9 - 3.2.3 操作可行性 ......................................... - 9 - 3.3 设计思想 ................................................ - 9 - 3.4 系统功能模块 ............................................ - 9 - 3.5 系统功能描述 ........................................... - 10 - 第4章 系统架构设计 ............................................ - 11 -

吕梁学院本科毕业论文(设计)

4.1 系统功能逻辑设计结构图 ................................. - 11 - 4.2 数据库的设计与实现 ..................................... - 11 -

4.2.1 系统数据分析 ...................................... - 11 - 4.2.2 数据库概念结构设计 ................................ - 12 - 4.2.3数据库主要表结构说明 .............................. - 14 - 4.2.4数据库逻辑结构设计 ................................ - 14 -

第5章 系统详细设计与实现 ...................................... - 17 -

5.1 数据库的连接实现 ....................................... - 17 -

5.1.1 连接数据库方法 .................................... - 17 - 5.1.2 建立用户 .......................................... - 18 - 5.1.3 数据库接口 ........................................ - 18 - 5.2 系统主界面实现 ......................................... - 18 - 第6章 系统测试 ................................................ - 23 -

6.1 系统测试 ............................................... - 23 - 6.2 系统测试目的 ........................................... - 23 - 6.3 单元测试分析 ........................................... - 23 -

6.3.1 对系统登录、退出模块的测试 ........................ - 23 - 6.3.2 对系统管理模块增删改查功能的测试 .................. - 24 - 6.4 测试分析总结及说明 ..................................... - 24 - 6.5 系统维护 ............................................... - 24 - 第7章 结论与展望 .............................................. - 26 -

7.1 结论 ................................................... - 26 - 7.2 问题与展望 ............................................. - 26 - 致 谢 ......................................................... - 27 -

吕梁学院本科毕业论文(设计)

第1章 绪 论

1.1 项目开发背景

本设计为学生奖助学金管理系统软件,是基于目前学校规模的增大而使得学生人数剧增,学生奖助学金管理需及时实现家庭信息的调查、审核、评定,了解学生更全面的信息前提下,学校对学生奖助学金管理自动化与准确化的要求日益强烈的背景下构思出来的,该软件设计完成后可用于学生奖助学金管理。

本系统为开发,力求使系统功能齐全简洁明了,且易于操作。

1.2 项目开发的目标

建立学生奖助学金管理系统,采用计算机进行管理,进一步提高办学效益和促进教学管理的现代化水平,实现学生信息管理工作流程的系统化、规范化。本项目采用JSP Model-1设计模式,使用JSP技术进行动态页面的设计,从系统的安全性和代码的可重用性方面考虑,运用JavaBean对程序的关键代码进行封装,使用Java JDBC驱动程序连接数据库,最后实现信息的增删改查等管理操作。

1.3 项目开发的意义

一个功能齐全、简单易用的学生奖助学金管理系统不但能有效地减轻学校教学管理者的工作负担,同时也使学生信息的处理方便快捷,所以学生奖助学金管理系统应该能够为用户提供公平的奖助学金综合评定手段。一直以来人们使用传统的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、人工的大量浪费、综合评定不全面。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着来越重要的作用。

作为计算机应用的一部分,使用计算机对学校的奖助学金进行管理,具有手工管理所无法比拟的优点。如果本文所研究的高校奖学金系统开发成功,并经测试后能顺利投入使用,对高校的学生管理部门来讲将会大大减少工作人员的工作量,提高工作效率,减少了人力、物力和财力,这些都是开发和使用本系统将带来的间接收益,同时也将促进学校信息化的进程,提高学院的管理效率。

本人在校期间学习了Java语言、数据库设计、Java Web开发等知识,借这次毕业设计的契机,运用所学知识开发学生信息管理系统,希望通过这次实践提升自身对软件工程、数据库、程序设计等理论的认识,积累系统开发的经验。

- 1 -

吕梁学院本科毕业论文(设计)

第2章 项目开发的技术基础

2.1项目开发常用技术

2.1.1 HTML语言概述

HTML(Hyper Text Markup Language 超文本标记语言)是一种用来制作超文本文档的简单标记语言。HTML文件是带有特定HTML插入标记的用以编排文档属性和格式的标准文本文件。它能于各种操作系统平台(如UNIX,WINDOWS等)。自1990年以来HTML就一直被用作World Wide Web上的信息表示语言,用于描述HomePage的格式设计和它与WWW上其它HomePage的连结信息。

HTML文档(即Homepage的源文件)是一个放置了标记的ASCII文本文件,通常它带有. html或. htm的文件扩展名。生成一个HTML文档主要有以下三种途径:

(1) 手工直接编写。

(2) 通过某些格式转换工具将现有的其它格式文档转换成HTML文档。 (3) 由Web服务器(或称HTTP 服务器)一方实时动态地生成。 一般的HTML页面具有如下的结构: 〈html〉

,<base>,<link>,<is index>,<meta> </head><p><body>这是HTML正文部分〈/body〉 </html><p>可见在一个HTML网页文件中,一般必须有一对〈html〉</html>标记作为文件的开头和结尾,在<html>标记后是头部标记<head></head>,其后是实体标记<body></body>。<p>2.1.2 JavaScript<p>JavaScript是应用程序在网页上脚本表达语言,可以将脚本嵌入Web页中。通常脚本在服务器上运行,但也可以采用客户端和服务器端结合使用,JavaScript是JSP的默认脚本语言。<p>2.1.3 JSP技术<p>- 2 -<p>吕梁学院本科毕业论文(设计)<p>JSP(Java Server Page)是一种实现普通静态HTML和动态页面输出混合编码的技术。从这一点来看,非常类似Microsoft ASP、PHP等技术。借助形式上的内容和外观表现的分离, Web页面制作的任务,可以比较方便地划分给页面设计人员和程序员,并方便地通过JSP来合成。在运行时,JSP将会被首先转换成Servlet,并以Servlet的形态编译运行,因此它的效率和功能与Servlet相比没有差别,一样具有很高的效率。<p>JSP是Java Server Page的缩写,是由Sun Microsystems公司倡导、许多公司参与建立一种动态网页技术标准,它在动态网页的建设中有强大而特别的功能。JSP是一种服务器端HTML(或XML)嵌入Java代码的脚本语言,是开发Web动态网站快速而有效的工具,JSP的技术的优势:<p>(1) JSP技术是用Java语言作为脚本语言的。Java语言是成熟的、强大的、易扩充的编程语言。<p>(2) 高效性与安全性。JSP在执行前先被编译成字节码,字节码由Java虚拟机解释执行,比源码解释效率高。<p>(3) 可维护性。由于JSP技术是一种开放的、跨平台的结构,因此Web服务器、平台及其他组件能很容易升级或切换,且不会影响JSP基本的应用程序。<p>(4) 稳定性。 (5) 产品的多样性。<p>目前,在国内JSP还是一种较新的技术。但JSP+Servlet+JDBC+JavaBean目前已经成为开发电子商务平台的主流技术。随着国内与国际的接轨,JSP必将成为网站开发技术的首选。<p>在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。JSP页面看上去象标准的HTML和XML页面,并附带有JSP引擎能够处理和抽取的额外元件。<p>Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给用户。<p>程序片段可以操作数据库、重新定向网页以及发送E-mail等,这就是建立动态网站所需要的功能。<p>所有程序都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低。它基于强大的Java语言,具有良好的伸缩性,在网络数据库应用开发领域具有得天独厚的优势。<p>JSP技术在多个方面加速了动态Web页面的开发: (1) 将内容的生成和显示进行分离<p>使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格)。生成内容的逻辑被封装在标识<p>- 3 -<p>吕梁学院本科毕业论文(设计)<p>和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。<p>在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。<p>(2) 强调可重用的组件<p>绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。<p>(3) 采用标识简化页面开发<p>Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。<p>通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。<p>(4) JSP能提供所有Servlets功能<p>与Servlets相比,JSP能提供所有Servlets功能,它比用Println书写和修改HTML更方便。可以更明确地进行分工,Web页面设计人员编写HTML,只需留出空间让Servlets程序员插入动态部分即可。JSP技术能够支持高度复杂的基于Web的应用。<p>(5) 健壮的存储管理和安全性<p>由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。<p>(6) 一次编写,各处运行<p>作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。<p>2.1.4 SQL语言介绍<p>- 4 -<p>吕梁学院本科毕业论文(设计)<p>SQL是英文Structured Query Language的缩写,意思为结构化查询语言。 SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。<p>目前,绝大多数流行的关系型数据库管理系统,如Oracle、Sybase、Access、Microsoft SQL Server等都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select、Insert、Update、Delete、Create 以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。在众多的SQL命令中,select语句应该算是使用最频繁的。select语句主要被用来对数据库进行查询并返回符合用户查询标准的结果数据。select语句中位于select关键词之后的列名用来决定哪些列将作为查询结果返回。用户可以按照自己的需要选择任意列,还可以使用通配符“*”来设定返回表格中的所有列。select语句中位于from关键词之后的表格名称用来决定将要进行查询操作的目标表格。除了上面所提到的运算符外,LIKE运算符在where条件从句中也非常重要。LIKE运算符的功能非常强大,通过使用LIKE运算符可以设定只选择与用户规定格式相同的记录。<p>2.1.5 JDBC<p>JDBC(Java Database Connectivity,数据库访问接口),它使数据库开发人员能够用标准Java API编写数据库应用程序。JDBC API主要用来连接数据库和直接调用SQL命令执行各种SQL语句。利用JDBC API可以执行一般的SQL语句、动态SQL语句及带IN和OUT参数的存储过程。Java中的JDBC相当于Microsoft平台中的ODBC(Open Database Connectivity)。<p>2.2 搭建Java Web开发环境<p>2.2.1 安装预配置JDK<p>JDK简介:<p>JDK (Java Development Kit),是SUN公司最新提供的基础Java语言开发工具软件包。其中包含Java语言的编译工具、运行工具以及类库。<p>JDK下载与安装:<p>JDK是一个开源、免费的工具。可以到SUN公司的官方网站上下载JDK最新版本,网址为http://java.sun.com/javase/downloads/ index.jsp。本书使用的JDK版本是Java SE Development Kit 6u25。<p>下载后得到jdk-6u25-windows-i586.exe文件,直接双击运行即开始安装。在安装<p>- 5 -<p>吕梁学院本科毕业论文(设计)<p>过程中可以选择安装路径和安装组件,如果没有特殊要求,保留默认设置即可。默认的安装路径是C:\\Program Files\\Java\\jdk1.6.0_25。之后,设置环境变量如下:<p>JAVA_HOME=<JSEDK安装目录><p>CLASSPATH=.;%JAVA_HOME%\\lib;%JAVA_HOME%\\lib\ools.jar Path=<原Path>;%JAVA_HOME%\\bin;%JAVA_HOME%\\jre\\bin<p>2.2.2 安装Java Web开发工具NetNeans<p>NetBeans简介:<p>NetBeans是Sun公司推出的开放源码的Java集成开发环境(Integrated Development Environment,IDE)。它是使用Java语言编写的,具有很好的可移植性,适用于各种客户机和Web使用,是业界第一款支持创新型Java开发的开放源码IDE。使用NetBeans可以更快地Java Web应用程序,跟踪Java EE最新技术,体验快速开发的便捷。<p>2.2.3 安装MySQL及其开发环境<p>Mysql简介:<p>MySQL是瑞典MySQL AB公司开发的一个小型关系型数据库管理系统。在2008年被Sun公司收购。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体成本而选择了MySQL作为网站后台数据库系统。<p>使用Java连接到Mysql,需要用到MySql Connector/J,这是MySql的JDBC驱动程序包。mysql-connector-java-5.1.16-bin.jar包是MySql的JDBC连接驱动包。<p>2.2.4 安装服务器Tomcat<p>Tomcat简介<p>Tomcat服务器是在SUN公司的JSWDK(JavaServer Web DevelopmentKit,Java服务器Web开发工具)基础上发展起来的一个优秀的Servlet/JSP容器,它是Apache-Jakarta软件组织的一个子项目。它不但支持运行Servlet和JSP,而且还具备了作为商业Java Web应用容器的特征。<p>2.2.5 安装GlassFish<p>GlassFish简介:<p>GlassFish是用于构建Java EE 5/6应用服务器的开源开发项目的名称。它基于Sun Microsystems提供的Sun Java System Application Server PE 9的源代码以及Oracle贡献<p>- 6 -<p>吕梁学院本科毕业论文(设计)<p>的TopLink持久性代码。GlassFish提供了开发高质量应用服务器的结构化过程,以前所未有的速度提供新的功能。<p>- 7 -<p>吕梁学院本科毕业论文(设计)<p>第3章 系统分析<p>学生信息管理,作为学校的日常工作之一,它的工作量可能是其它信息工作量的几倍,学生信息管理、成绩管理、数据统计以及学校新闻公告的发布等等,每个信息的数据都在不断地变化着,如果采用人工的方式进行操作,那么将会比较繁琐。为了使工作变得简单高效,针对这样的情况,提出开发学生信息管理系统这一课题,并对其中的功能进行了部分的设计与实现。<p>3.1 需求分析<p>通过对学校信息系统的了解及实际调查,要求本系统实现以下功能。 系统需要满足学生、教师、教务管理员三种身份的人员进行登录。<p>功能需求:高校奖学金评定系统不但要能对学生获得奖学金的等级进行评定和统 计,还要能够实现对数据表进行录入、修改、删除、查询等操作。<p>性能需求:高校奖学金评定系统要求在操作时简单方便、尽量少输汉字、有较好的容错性、健壮性强、无运行时间等。<p>数据库结构:提高数据库的完整性和便予管理员的操作管理,高校奖学金评定系统在创建数据库时要将数据表通过某种关联组织起来。<p>环境需求:本软件要求能在Windows操作系统下运行。<p>用户界面需求:要求界面友好,采用人性化设计,操作简单,尽量少输入汉字,并能够实现尽可能多的用户需求。<p>3.2 可行性分析<p>3.2.1 技术可行性<p>本系统主要利用网络平台方便地进学生信息管理,从目前IT业界比较流行的数据库开发、管理软件来看,Sun公司的JAVA开发平台和Mysql数据库的结合无疑是在实际应用中较为成功的一种解决方案。为用户提供了业界软件开发一直坚持的非常友好、操作简单的用户界面、完善强大的数据库操作功能和简洁明了的数据库接口,而且Java开发的系统具有跨平台使用、简单、稳定、安全、运行快、企业应用平台成熟的优势,提供的技术支持很完备,所以技术实现起来相对容易;另外我在大学期间学习了Java语言、网页设计、数据库设计、Java Web开发等知识,并具备了简单开发的能力,不论从客观还是自身技术方面,都可以达到学生信息管理系统的开发要求。<p>- 8 -<p>吕梁学院本科毕业论文(设计)<p>3.2.2 经济可行性<p>由于本系统只作为毕业设计,所以对它的经济可行性没做过多的考虑。<p>3.2.3 操作可行性<p>本系统的界面设计简单直观,易于理解。它使用微软公司的WINDOWS系统为操作平台,操作起来很容易上手。<p>3.3 设计思想<p>学生信息管理系统设计的基本思想是把整个系统按照实现模块进行分解,利用JSP+JavaBean进行编程。JSP与JavaBean搭配使用有以下3个好处[1]:<p>(1) 使得HTML与Java程序分离,这样便于维护代码。如果把所有的程序代码都写到JSP网页中,会使得代码繁杂,难以维护。<p>(2) 可以降低开发JSP网页人员对Java编程能力的要求。<p>(3) JSP侧重于生成动态网页,事物处理由JavaBean来完成,这样可以充分利用JavaBean组件的可重用性特点,提高开发网站的效率。<p>图3-1 系统设计模型图<p>3.4 系统功能模块<p>通过分析系统需实现的功能和系统操作流程,得出以下的功能模块。 (1) 学生模块 (2) 辅导员模块 (3) 教务处模块<p>- 9 -<p>吕梁学院本科毕业论文(设计)<p>(4) 管理员模块 (5) 权限模块<p>3.5 系统功能描述<p>1、学生模块<p>学生登录后进入学生模块,学生可录入申请资料(个人信息、学生家庭情况)、可查询自己的成绩和奖惩情况,录入和查询自己的资料信息无误后可提交。<p>2、辅导员模块<p>辅导员登录后进入辅导员模块,辅导员可对注册的学生进行增、删操作、可对学生的成绩和奖惩进行增、删、改、查,以及审核学生的资格,辅导员确认学生的信息无误后将审核通过的学生呈报给教务处。<p>3、教务处模块<p>教务处领导登录后进入教务处模块,教务处领导对学生的信息查询、审核后将审核通过的学生呈报到教育局,得到教育局确认后发布获得奖学金的学生。<p>4、管理员模块<p>管理员在本模块中有着最高的权力。 5、权限模块<p>所有web页面需要页面权限验证,对不同的模块分配不同的访问权限。例如:学生进入学生模块,而不能进入管理员模块。<p>系统管理员、教务处领导、辅导员的用户名和密码可以预先在数据库中设定。<p>- 10 -<p>吕梁学院本科毕业论文(设计)<p>第4章 系统架构设计<p>4.1 系统功能逻辑设计结构图<p>根据系统分析得出系统的功能逻辑设计结构图如下:<p>登录 学生模块 申请书管理 个人信息管理 帐号管理(修改密码) 分数查询 辅导员模块 申请书审核管理 学生信息管理 学生账号管理 帐号管理(修改密码) 教务处模块 申请书复审 学生信息查询 管理员模块 学生个人信息查询 公告管理 系统维护 帐号管理 图4-1 系统逻辑结构设计图<p>4.2 数据库的设计与实现<p>4.2.1 系统数据分析<p>根据系统功能逻辑设计结构图分析与设计,可得到有关数据库操作的对象有3个,实体有11个[2]。<p>- 11 -<p>吕梁学院本科毕业论文(设计)<p>三个对象分别为下表所示三种权限:<p>表4-1 权限表<p>权限 学生 描述 辅导员 教务处 录入申请资料(个人信息、学生家庭情况)、可查询自己的成绩和奖惩情况,录入和查询自己的资料信息无误后可提交。 对注册的学生进行增、删操作、可对学生的成绩和奖惩进行增、删、改、查,以及审核学生的资格 教务处领导登录后进入教务处模块,教务处领导对学生的信息查询、审核后将审核通过的学生呈报到教育局 实体分别为下表所列:<p>表4-2 实体表<p>序号 1 2 3 4 5 表名 班级信息表(classes) 学生信息表(students) 学生奖励记录表(prize) 学生惩罚记录表(punish) 学生测评表(score) 说明 保存学校院系及班级的信息 保存学生的基本信息 保存学生奖励信息 保存学生惩罚信息 保存学生每学期的测评信息 4.2.2 数据库概念结构设计<p>数据库概念结构设计是系统功能实现的基础。制作数据库表首先要确定实体的属性和实体间的关系,即E-R图的设计。数据库要存储的班级信息、学生信息、学生奖励信息、学生处罚信息、学生考工考级信息、学生测评信息、班级档案信息和用户信息、新闻分类、新闻信息。<p>班级 班级编号 班级名称<p>图4-2 班级实体及属性<p>- 12 -<p>吕梁学院本科毕业论文(设计)<p>邮政编码 家庭地址 出生日期 政治面貌 学号 姓名 性别 担任职务 班级编号 移动电话 身份证号 家庭电话 照片 学生 籍贯 民族<p>图4-3 学生实体及属性<p>编号 学生奖励 学号 奖励日奖励原因 详细说明<p>图4-4 学生奖励实体及属性<p>编号 学生惩罚 学号 惩罚日惩罚原详细说<p>图4-5 学生惩罚实体及属性<p>- 13 -<p>吕梁学院本科毕业论文(设计)<p>合计 编号 备注 名次 学号 学期 起始学年 截止学年 体育分数 测评日期 学生测评 德育分数 智育分数 德育所占比智育所占比图4-6 学生测评实体及属性<p>体育所占比<p>4.2.3数据库主要表结构说明<p>班级信息表(班级编号,班级名称)<p>学生信息表(学号,姓名,照片,性别,出生日期,民族,政治面貌,籍贯,家庭地址,邮政编码,家庭电话,移动电话,身份证号,担任职务,所在班级编号)<p>学生奖励记录表(编号,学号,奖励日期,奖励原因,详细说明) 学生惩罚记录表(编号,学号,惩罚日期,惩罚原因,详细说明)<p>学生测评记录表(编号,学号,起始学年,截至学年,学期,测评日期,德育分数,德育所占比例,智育分数,智育所占比例,体育分数,体育所占比例,合计,名次,备注)<p>4.2.4数据库逻辑结构设计<p>数据库概念结构设计完毕后,可以将数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。本系统数据库采用的是Mysql数据库,系统数据库名称为jsp_db。数据库jsp_db中包含11张表。下面是各数据表的主要结构。<p>(1) 班级信息表(classes)<p>表classes用来保存学校院系及班级的信息。其结构如下表所示。<p>表4-3 班级信息结构表<p>编号 1 2<p>字段名称 classid classname 数据类型 varchar(20) varchar(40) - 14 -<p>说明 内码,主键 班级名称 否 允许空 吕梁学院本科毕业论文(设计)<p>(2) 学生信息表(students)<p>表students用来保存学生的基本信息。表结构如下表所示。<p>表4-4 学生信息结构表<p>编号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 字段名称 stuno stuname photo sex birth nationality political_party family_place address postcard family_phone mobile id_card duty classid 数据类型 varchar(20) varchar(50) varchar(30) char(2) Databime varchar(20) varchar(20) varchar(30) varchar(100) varchar(10) varchar(30) varchar(30) varchar(30) varchar(30) varchar(20) 姓名 照片 性别 出生日期 民族 政治面貌 籍贯 家庭地址 邮政编码 家庭电话 移动电话 身份证号 担任职务 说明 学号,主键 否 是 是 是 是 是 是 是 是 是 是 是 是 允许空 班级内码,外键 (3) 学生奖励记录表(prize)<p>表prize用来保存学生奖励信息。表结构如下表所示。<p>表4-5 学生奖励信息结构表<p>编号 1 2 3 编号 4 5 id stuno pdate 字段名称 preason pdetail 字段名称 数据类型 int(20) varchar(20) Datetime 数据类型 varchar(200) varhchar(200) 说明 内码,主键 学号,外键 奖励日期 说明 奖励原因 详细说明 允许空 否 是 允许空 是 是 (4) 学生处罚记录表(punish)<p>表punish用来保存学生惩罚信息。表结构如下表所示。<p>表4-6 学生处罚信息结构表<p>编号 1 2 3 4 5<p>字段名称 id stuno pdate preason pdetail 数据类型 int(20) varchar(20) Datetime varchar(200) varhchar(200) - 15 -<p>说明 内码,主键 学号,外键 惩罚日期 惩罚原因 详细说明 允许空 否 是 是 是 吕梁学院本科毕业论文(设计)<p>(5) 学生测评记录表(score)<p>表score用来保存学生每学期的测评信息。表结构如下表所示。<p>表4-7 学生测评信息结构表<p>编号 1 2 3 4 5 6 7 8 9 10 11 12 13 编号 14 15 id stuno syear1 syear2 sterm sdate smoral smoralper smind smindper sgmy sgmyper stotal 字段名称 sorder smemo 字段名称 数据类型 int(20) varchar(20) char(4) char(4) char(2) Datetime varchar(20) varchar(20) varchar(20) varchar(20) varchar(20) varchar(20) varchar(20) 数据类型 Smallint varchar(200) 名次 备注 说明 内码,主键 学号,外键 起始学年 截至学年 学期 测评日期 德育分数 德育所占比例 智育分数 智育所占比例 体育分数 体育所占比例 合计 说明 允许空 否 是 是 是 是 是 是 是 是 允许空 是 是 - 16 -<p>吕梁学院本科毕业论文(设计)<p>第5章 系统详细设计与实现<p>5.1 数据库的连接实现<p>5.1.1 连接数据库方法<p>本系统模块用JSP技术编写,那么就必须借助于JDBC(Java DataBase Connectivity)来操作数据库。JDBC是一组API(Application Programming Interface),即应用程序设计接口。JDBC共有四种类型:<p>类型一,利用桥连接器(Bridge)的概念连接数据库。<p>类型二,运用由数据库厂商提供的用于操作数据库的API函数。<p>类型三,这类驱动程序通过网络协议与中间件连通,中间件负责转换数据库操作信息。<p>类型四,这类驱动不通过任何中间件,而直接以Java数据库驱动程序来执行数据库的访问。<p>相比之下,此系统选择第四种类型的数据库驱动。它的优点更适合这个系统创建与数据库的连接,通过编写java文件,连接MySQL数据库。<p>编写java的代码如下:<p>package system; import java.sql.*;<p>//连接数据库的工具类。<p>public class DataBaseConnection { /**<p>*一个静态方法,返回一个数据库的连接。 *这样达到了对数据库连接统一控制的目的。 */<p>public static Connection getConnection() { Connection con=null; String CLASSFORNAME=\"com.mysql.jdbc.Driver\"; String<p>serverInfo=\"jdbc:mysql://127.0.0.1:3306/jsp_db?user=root&password=1234&useUnicode=true&characterEncoding=gb2312\"; try { Class.forName(CLASSFORNAME); con = DriverManager.getConnection(serverInfo); } catch(Exception e) { e.printStackTrace();<p>- 17 -<p>吕梁学院本科毕业论文(设计)<p>}<p>}<p>}<p>return con;<p>5.1.2 建立用户<p>JSP与MySQL数据库连接的时候,需要使用一个合法的用户登录数据库。此系统模块在数据库中建立以下三个级别的用户:<p>表5-1 各级别用户表<p>级别 一级 二级 三级 权限 学生 班主任和教务处 管理员 用户名 本人学号 Admin 密码 本人学号 000000 教务管理员赋予权限 数据存储在数据库中的user表和students表中。<p>5.1.3 数据库接口<p>JDBC驱动程序连接数据库是通过接口来完成的。所有的驱动程序提供java.sql.*的实现<p>表5-2 JDBC驱动程序接口<p>接口名称 Java.sql.Driver Java.sql.DriverManager Java.sql.Connection Java.sql.Statement java.sql.ResultSet 功能描述 提供各种方法,用于读取数据库驱动器的信息。提供connect()方法。 主要用来管理Driver对象连接数据库。 创建Statement对象。 对特定的数据库执行SQL语句。 控制一个特定语句的行数据的存取。 5.2 系统主界面实现<p>5.2.1 总用例图<p>- 18 -<p>吕梁学院本科毕业论文(设计)<p>个人信息管理学生分数信息查询申请书管理公告管理系统维护学生登陆申请书审核(复审)用户管理管理员帐号管理(修改密码)察看公告教务部申请书审核辅导员学生分数信息管理学生个人信息查询 图5-1 总用例图<p>5.2.2 各模块及其功能<p>1.学生模块<p>(1) 帐号管理(修改密码) 功能意义:学生更改登录密码。<p>更改密码学生图5-2 用例图<p>(2) 申请书管理<p>功能意义:学生提交申请表申请奖学金.<p>- 19 -<p>吕梁学院本科毕业论文(设计)<p>增加更新查询学生删除提交 图5-3 用例图<p>(3)个人信息管理<p>功能意义:学生对自身信息的增删改查。<p>增加更新查询学生删除<p>- 20 -<p>吕梁学院本科毕业论文(设计)<p>图5-4 用例图<p>(4)分数查询管理<p>功能意义:学生对自己和本专业同学的分数查询。<p>分数查询学生 图5-5 用例图<p>2. 辅导员模块<p>(1) 学生信息管理<p>功能意义:学生个人具体信息,以及账号管理。<p>学生分数管理辅导员学生个人信息管理<p>图5-6 用例图<p>(2) 申请书审核管理<p>功能意义:实现对学生提交申请书的管理。<p>审核状态选择查看申请书辅导员审核信息返还<p>- 21 -<p>吕梁学院本科毕业论文(设计)<p>图5-7 用例图<p>(3) 学生账号管理<p>功能意义:实现学生账号的增加,删除,修改。<p>增加账号辅导员修改账号状态<p>图5-8 用例图<p>3.教务处模块 (1)申请书复审<p>功能意义:实现对学生提交申请书的复审管理。<p>复审状态选择申请书复审教务处领导复审信息返回 图5-9 用例图<p>(2)信息查询<p>功能意义:查询学生成绩、奖惩信息、个人信息。<p>查询学生成绩、奖惩信息教务处领导个人信息查询 图5-10 用例图<p>- 22 -<p>吕梁学院本科毕业论文(设计)<p>第6章 系统测试<p>6.1 系统测试<p>系统测试是管理信息系统开发周期中一个十分重要而漫长的阶段。其重要性体现在它是保证系统质量与可靠性的最后关口,是对整个系统开发过程包括系统分析、系统设计和系统实现的最终审查。<p>系统测试的对象不仅仅是源程序,而是整个软件,即程序和文档。系统测试的目的是发现软件的错误,系统测试中可能发现的错误包括:功能错误、系统错误、过程错误、数据错误、编码错误。<p>在系统测试工作中,要事先准备好测试方案和测试数据,并在测试过程中如实填写测试记录,以便于进行系统的更新和维护。<p>在本系统的测试过程中,我们运用了各种系统测试方法,对整个系统的主页、各功能模块及页面、数据库操作、程序代码和整体功能分别进行了详细的测试,保证了系统的质量、可靠性和可维护性<p>6.2 系统测试目的<p>软件测试是对软件规格说明、软件设计和编码的最后审核,目的是在软件产品交付之前尽可能发现软件中潜伏的错误。发现错误是为了改正错误。测试阶段发现的错误越多,交付的软件质量越高,后期的纠错性维护工作越少,其是一项“建设性”活动[3]。<p>6.3 单元测试分析<p>6.3.1 对系统登录、退出模块的测试<p>测试过程如下表所示:<p>表6-1 登录、退出模块的测试表<p>验收项 测试步骤 在用户名和密码项输入非法数据,点击登录 在用户名和密码项输入合法数据,点击登录 测试步骤 结果要求 阻挡,提示“该用户不存在”,无法进入系统 进入相应系统 结果要求 - 23 -<p>实际结果 与要求 一致 与要求 一致 实际结果 是否通过 通过 登录 模块 通过 是否通过 验收项<p>吕梁学院本科毕业论文(设计)<p>注销登 录模块 正确登录系统后,点击注销登录 正确结果:跳转到系统首页,初始化系统;错误结果:点击返回键返回到登录系统后的界面 与要求 一致 通过 6.3.2 对系统管理模块增删改查功能的测试<p>表6-2 增删改查功能的测试表<p>验收项 表信息的增加模块 表信息的删除模块 表信息的更改模块 表信息的查看模块 测试步骤 进入管理系统,不按增加要求格式填写增加内容 进入管理系统,按要求增加内容 进入管理系统,删除列表信息 进入管理系统,按要求更信息 通过增、删、改,查看信息的更新情况 结果要求 阻挡,提示“格式不正确” 查看本单位信息,增加的内容在列表中显示 该列表信息在列表中被删除 列表中的信息更换成更改的信息 列表中的信息进行了相应操作的更新 实际结果 与要求 一致 与要求 一致 与要求 一致 与要求 一致 与要求 一致 是否通过 通过 通过 通过 通过 通过 6.4 测试分析总结及说明<p>测试结果显示,系统性能基本满足测试目标,系统运行结果正常。<p>值得指出的是,系统的核心数据库,随着数据的不断增多,必然会产生冗余,导致系统运行效率降低,建议管理员定期备份和清理冗余数据,以保证系统的正常高效运行,另外不能保证通过测试的程序一定正确,测试只能找出程序中的错误,而不能证明程序无错。软件交付运行后测试并未结束,只是在软件交付之后,将由用户扮演测试的角色继续进行。<p>6.5 系统维护<p>软件维护是软件生存期中时间最长的一个阶段。也是消耗人力最多的一个时期。原因除其问题本身的复杂性外,主要是未引起人们的重视,致使后果严重。<p>系统测试之后,我们进入了试运行及维护阶段,这一阶段的的目的是保证管理信息系统正常而可靠地运行,并能使系统不断得到改善和提高,以充分发挥系统本身的作用。在整个系统的运行过程中,系统的维护和管理是始终贯穿其中的,包括进行系统应用程序的维护、代码的维护、数据的备份与恢复、硬件设备维护。系统在运行时,也要随着环境的变化根据不同的需求及变化对系统进行必要的修改,使得系统功能更加完善。<p>- 24 -<p>吕梁学院本科毕业论文(设计)<p>(1) 系统维护工作的内容<p>系统维护工作贯穿于系统的整个运行过程中,包括:系统应用程序的维护、数据的维护、代码的维护、硬件设备维护,系统维护的重点是系统应用软件的维护工作。而系统维护工作不应总是被动的等待用户提出要求后才进行,应进行主动的预防性维护。<p>(2) 系统维护的组织与管理<p>系统维护性工作不仅是技术性工作,为了保证系统维护性工作的质量,需要付出大量的管理工作。系统维护要按照严格的步骤进行,防止未经允许擅自修改系统。为了评价维护的有效性,确定系统的质量,记载系统所经历的维护内容,要将维护工作的全部内容以文档的规范化形式记录下来。<p>- 25 -<p>吕梁学院本科毕业论文(设计)<p>第7章 结论与展望<p>7.1 结论<p>经过十几天的设计和开发,学生奖助学金管理系统开发完毕,所设计的系统已完成所设定的功能要求,实现了对系统用户的管理、对班级信息的管理、对学生相关信息的管理、对校园新闻公告的管理等。在整个系统开发过程中,首先对学生信息管理需求进行调研和分析;其次,根据实际情况并参照相关网站的设计及具体内容,设计整个系统的结构和功能,对用户权限进行分类;然后是设计与实现;最后对系统进行调试,发现问题并解决问题。<p>通过本次系统设计,我基本掌握了项目开发流程,学会如何制作一个网站,熟悉了SQL数据库的数据操作,基本掌握建立一个学生信息管理系统的流程和具体功能,在制作网页的过程中,学到不少在课堂上学习不到的知识。但是由于本人是初次开发软件,在知识、经验方面都存在着不足,无论是程序设计还是数据库设计方面还是有很多欠缺,与现实需求还有很大的差距。<p>或许这个系统远不能称之为成功,但它终究会成为我程序开发生涯的一块里程碑。它是大学所学知识的一次总结,让我知道了自己的所学所知所识,它给我努力的方向,它给我继续向前走的动力,路漫漫其修远兮,吾将上下而求索!<p>7.2 问题与展望<p>问题一,信息不能按段落划分的形式在浏览器中显示,而是将管理员录入的内容以一大段的形式展示给用户,影响到了网页美观效果,也影响到了用户读取信息的心情。经过研究发现,我们通过如下方式录入信息可解决以上问题:录入时将内容以段为单位写在<p>和</p>之间,就会按段落分开显示信息。<p>问题二,系统没有对用户的登录信息进行加密,用户的登录密码在用户查看时都会以明码方式显示出来,安全性很差,经过查阅资料,我们可以利用MD5方法对用户登录密码进行加密,以解决密码安全性的问题。<p>还有一个漏洞就是对用户的管理功能做的不够,没有考虑到用户密码丢失的问题,解决方法有两个,一个就是采取通常的做法,让用户在注册过程中,设置一些问题,通过回答问题的方式来取回密码,还有一个方法就是让管理员通过后台,初始化用户的密码,然后用户登陆对密码进行修改,这两个方法都可以达到目的。<p>- 26 -<p>吕梁学院本科毕业论文(设计)<p>致 谢<p>毕业设计完成之际,我由衷地感谢老师和同学的大力支持下,尤其是导师王里平经常性的监督、精心的辅导、孜孜不倦的教诲,以及南亚会老师对我编程的帮助,还有与张甜甜等同学经常性地进行问题研究和探讨,使我从中获益匪浅。作为一个毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有导师的督促指导,以及同学们的帮助,想要完成这个设计是难以想象的。<p>王老师不仅使我掌握了系统开发的专业知识,还使我明白了许多待人接物与为人处世的道理。所有这一切都将成为我受益终生的宝贵财富!本论文字里行间,都倾注了王老师大量的心血。在此,谨向王老师表示崇高的敬意和衷心的感谢!<p>感谢在论文完成期间,与我风雨同舟、共同奋斗的同学们,在这里请接受我诚挚的谢意!<p>最后感谢我的母校吕梁学院对我的培养!<p>- 27 -<p> <div class="preview-ft"> <div class="preview-title"> <p style="color: red;"><strong>因篇幅问题不能全部显示,请点此查看更多更全内容</strong></p> <div class="model-fold-cover-bd"><a href="https://www.tang5.com/mluxxg/nreokksiioa/" target="_blank"><span>查看全文</span><i class="iconfont icon-chakangengduo"></i></a></div> </div> </div> <script type="text/javascript" src="https://jss.yrrf.cn/pc/wenzhang/detail_left.js"></script> </div> <div class="glfra_f"> </div> </div> <script type="text/javascript" src="https://jss.yrrf.cn/pc/wenzhang/wenzhang/detail_foot.js"></script> <script type="text/javascript" src="https://jss.yrrf.cn/pc/share_right_gg1.js"></script> <script type="text/javascript" src="https://jss.huatuo6.com/pc/share_right_xgzx.js"></script> <script type="text/javascript" src="https://jss.yrrf.cn/pc/share_right_gg2.js"></script> <script type="text/javascript" src="https://jss.huatuo6.com/pc/share_right_rmyd.js"></script> </div> <div class="n_right"> <script type="text/javascript" src="https://jss.yrrf.cn/pc/share_cebian_gg1.js"></script> <script type="text/javascript" src="https://jss.huatuo6.com/pc/share_cebian_rmht.js"></script> <script type="text/javascript" src="https://jss.yrrf.cn/pc/share_cebian_gg2.js"></script> <script type="text/javascript" src="https://jss.huatuo6.com/pc/share_cebian_rmtw.js"></script> <script type="text/javascript" src="https://jss.yrrf.cn/pc/share_cebian_gg3.js"></script> <script type="text/javascript" src="https://jss.huatuo6.com/pc/share_cebian_wntj.js"></script> </div> </div> <div class="foot"> <div class="smain"> <div class="foot_ano clearfix"> <!-- <div class="foot_logo"> <img src="images/logo_w.png" alt="AI游中国" /> </div> --> <div class="foot_mesg"> <p> Copyright © 2019-<span class="currentYear"></span> yrrf.cn 版权所有 <a href="https://beian.miit.gov.cn/" target="_blank" style="color:#fff">赣ICP备2024042794号-2</a> </p> <p> 违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com </p> <p> 本站由北京市万商天勤律师事务所王兴未律师提供法律服务 </p> </div> </div> </div> </div> <script type="text/javascript"> const currentYear = new Date().getFullYear(); $('.currentYear').html(currentYear) </script>