学生管理系统.docx
- 文档编号:9376199
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:17
- 大小:411.98KB
学生管理系统.docx
《学生管理系统.docx》由会员分享,可在线阅读,更多相关《学生管理系统.docx(17页珍藏版)》请在冰豆网上搜索。
学生管理系统
编号:
课程设计
学生管理系统的开发与设计
1绪论
1.1课程设计的背景
随着互联网的迅速发展,WEB技术得到大量的应用,各种WEB网站为人们的生活、工作、学习和娱乐提供了方便,但同时人们对生活质量的追求和对信息的获取速度及质量的要求也越来越高,人们不仅要求相应的系统能完成相应的功能,而且要求能更快更好的完成人们要求的任务,如页面跳转的时间不能太长,页面上的内容能给用户很好的指引去帮助他们尽快的操作,有的在安全性方面也有很高的要求。
今天,计算机的价格已经十分低廉,性能却有了长足的进步。
它已经被应用于许多领域,计算机之所以如此流行的原因主要有以
下几个方面:
首先,计算机可以代替人工进行许多繁杂的劳动;
其次,计算机可以节省许多资源;
第三,计算机可以大大的提高人们的工作效率;
第四,计算机可以使敏感文档更加安全,等等。
1.2课程设计的目的和意义
1.2.1目的
软件测试是软件开发过程的重要组成部分,是用来确认一个产品是否符合开发之前所提出的一些要求。
软件测试的目的:
第一是确认软件的质量,其一方面是确认软件做了你所期望的事情,另一方面是确认软件以正确的方式来做了这个事情;第二是提供信息,确认网站能够提供正确的数据信息,处理数据信息都必须正确而且有效,无论是用户还是管理员都能得到更新准确的信息。
随着计算机的日益普及和网络的发展,数据库的应用范围越来越广,数据库应用的功能也越来越强,因此编写管理信息系统应用程序也显得尤为重要,在强调管理,强调信息的现代社会中它变得越来越普及。
1.2.2意义
本课程设计是计算机科学与技术专业、信息安全专业的主要专业设计。
本课程设计的目的是使学生了解并掌握J2EE框架技术,重点探讨JDBC、JavaBean、JSP、Servlet、EJB、Struts等J2EE的核心技术。
课程设计的目的在于:
(1)培养系统设计的整体思想
(2)培养编写程序、调试程序的能力
(3)学习编写技术文档
(4)培养独立学习、吸取他人的经验、探讨技术的习惯
1.3设计的主要内容
学生管理系统主要是实现对学生信息的管理,本设计主要是面对管理员用户,管理员通过登录验证,登录到系统,然后对学生信息进行修改、添加、删除等操作,从而实现对学生方便有效地管理。
本系统是给予SSH进行的设计,利用相关技术,实现系统的安全性能,以及方便快捷的性能,从而达到对学生信息管理的有效性。
学生管理系统的设计,主要是实现对学生的管理的操作(查询、添加、修改、删除),首先,管理员必须通过登陆界面,实现管理员登陆。
其次,管理员登陆成功以后,进入主界面,添加对学生进行添加、修改、删除、查询的链接,通过对链接的调用,我们可以实现不同界面的调用,从而实现对学生的管理。
2相关技术介绍
2.1JSP技术
JSP(JavaServerPages)技术是由Sun公司发布的用于开发动态Web应用的一项技术。
它以其简单易学、跨平台的特性,在众多动态Web应用程序设计语言中异军突起,在短短几年中已经形成了一套完整的规范,并广泛地应用于电子商务等各个领域中。
在国内,JSP现在也得到了比较广泛的重视,得到了很好的发展,越来越多的动态网站开始采用JSP技术。
本章就对JSP及其相关技术进行简单的介绍。
JSP技术可以以一种简捷而快速的方法生成Web页面。
使用JSP技术的Web页面可以很容易地显示动态内容。
JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器、应用服务器、浏览器和开发工具共同工作。
JSP技术不是惟一的动态网页技术,也不是第一个,在JSP技术出现之前就已经存在几种优秀的动态网页技术,如CGI、ASP等。
下面结合这些技术的介绍,讲述动态网页技术的发展和JSP技术的诞生。
JSP的开发背景及发展历史
在万维网短暂的历史中,万维网已经从一个大部分显示静态信息的网络演化到对股票进行交易和进行购书操作的一个基础设施。
在各种各样的应用程序中,对于可能使用的基于Web的客户端,看上去没有任何限制。
基于浏览器客户端的应用程序比传统的基于客户机/服务器的应用程序有几个好处。
这些好处包括几乎没有限制的客户端访问和极其简化的应用程序部署和管理(要更新一个应用程序,管理人员只需要更改一个基于服务器的程序,而不是成千上万的安装在客户端的应用程序)。
这样,软件工业正迅速地向建造基于浏览器客户端的多层次应用程序迈进。
这些快速增长的精巧的基于Web的应用程序要求开发技术上的改进。
静态HTML对于显示相对静态的内容是不错的选择;新的挑战在于创建交互的基于Web的应用程序,在这些程序中,页面的内容是基于用户的请求或者系统的状态,而不是预先定义的文字。
对于这个问题的一个早期解决方案是使用CGI-BIN接口。
开发人员编写与接口相关的单独的程序,以及基于Web的应用程序,后者通过Web服务器来调用前者。
这个方案有着严重的扩展性问题——每个新的CGI要求在服务器上新增一个进程。
如果多个用户并发地访问该程序,这些进程将消耗该Web服务器所有的可用资源,并且系统性能会降低到极其低下的地步。
某些Web服务器供应商已经尝试通过为他们的服务器提供“插件”和API来简化Web应用程序的开发。
这些解决方案是与特定的Web服务器相关的,不能解决跨多个供应商的解决方案的问题。
例如,微软的ActiveServerPages(ASP)技术使得在Web页面上创建动态内容更加容易,但也只能工作在微软的IIS和PersonalWebServer上。
还存在其他的解决方案,但都不能使一个普通的页面设计者能够轻易地掌握。
例如,像JavaServlet这样的技术就可以使得用Java语言编写交互的应用程序的服务器端的代码变得容易。
开发人员能够编写出这样的Servlet,以接收来自Web浏览器的HTTP请求,动态地生成响应(可能要查询数据库来完成这项请求),然后发送包含HTML或XML文档的响应到浏览器。
注意:
一个JavaServlet就是一个基于Java技术的运行在服务器端的程序(与Applet不同,后者运行在浏览器端)。
Servlet会在本书第4章介绍。
采用这种方法,整个网页必须都在JavaServlet中制作。
如果开发人员或者Web管理人员想要调整页面显示,就不得不编辑并重新编译该JavaServlet,即使在逻辑上已经能够运行了。
采用这种方法,生成带有动态内容的页面仍然需要应用程序的开发技巧。
很显然,目前所需要的是一个业界范围内的创建动态内容页面的解决方案。
这个方案将解决当前方案所受到的限制。
如下:
能够在任何Web或应用程序服务器上运行。
将应用程序逻辑和页面显示分离。
能够快速地开发和测试。
简化开发基于Web的交互式应用程序的过程。
JSP技术就是被设计用来满足这样的要求的。
JSP规范是Web服务器、应用服务器、交易系统以及开发工具供应商间广泛合作的结果。
Sun开发出这个规范来整合和平衡已经存在的对Java编程环境(例如,JavaServlet和JavaBeans)进行支持的技术和工具。
其结果是产生了一种新的、开发基于Web应用程序的方法,给予使用基于组件应用逻辑的页面设计者以强大的功能。
2.2SSH技术
SSH为struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。
集成SSH框架的系统从职责上分为四层:
表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。
其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,利用Hibernate框架对持久层提供支持,业务层用Spring支持。
具体做法是:
用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring完成业务逻辑。
系统的基本业务流程是:
在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。
在业务层中,管理服务组件的SpringIoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。
而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。
采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。
这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。
而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。
2.3MyEclipse环境
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。
MyEclipse,是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。
在结构上,MyEclipse的特征可以被分为7类:
1.JavaEE模型
2.WEB开发工具
3.EJB开发工具
4.应用程序服务器的连接器
5.JavaEE项目部署服务
6.数据库服务
7.MyEclipse整合帮助
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。
MyEclipse6.0以后版本安装时不需安装Eclipse。
2.4Tomcar服务器
Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。
因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
目前最新版本是7.0。
Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
这里的诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。
另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
不过,Tomcat处理静态HTML的能力不如Apache服务器。
目前Tomcat最新版本为7.0.27Released。
2.5MySql数据库
MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQLAB开发、发布和支持。
MySQLAB是一家基于MySQL开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。
MySQL是MySQLAB的注册商标。
MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。
MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。
MySQL网站()提供了关于MySQL和MySQLAB的最新的消息。
MySQL是一个数据库管理系统
一个数据库是一个结构化的数据集合。
它可以是从一个简单的销售表到一个美术馆、或者一个社团网络的庞大的信息集合。
如果要添加、访问和处理存储在一个计算机数据库中的数据,你就需要一个像MySQL这样的数据库管理系统。
从计算机可以很好的处理大量的数据以来,数据库管理系统就在计算机处理中和独立应用程序或其他部分应用程序一样扮演着一个重要的角色。
MySQL是一个关系数据库管理系统
关系数据库把数据存放在分立的表格中,这比把所有数据存放在一个大仓库中要好得多,这样做将增加你的速度和灵活性。
“MySQL”中的SQL代表“StructuredQueryLanguage”(结构化查询语言)。
SQL是用于访问数据库的最通用的标准语言,它是由ANSI/ISO定义的SQL标准。
SQL标准发展自1986年以来,已经存在多个版本:
SQL-86,SQL-92,SQL:
1999,SQL:
2003,其中SQL:
2003是该标准的当前版本。
MySQL是开源的
开源意味着任何人都可以使用和修改该软件,任何人都可以从Internet上下载和使用MySQL而不需要支付任何费用。
如果你愿意,你可以研究其源代码,并根据你的需要修改它。
MySQL使用GPL(GNUGeneralPublicLicense,通用公共许可),在hpt:
//www.fsf.org/licenses中定义了你在不同的场合对软件可以或不可以做什么。
如果你觉得GPL不爽或者想把MySQL的源代码集成到一个商业应用中去,你可以向MySQLAB购买一个商业许可版本。
MySQL服务器是一个快的、可靠的和易于使用的数据库服务器
如果这是你正在寻找的,你可以试一试。
MySQL服务器还包含一个由用户紧密合作开发的实用特性集。
MySQL服务器原本就是开发比已存在的数据库更快的用于处理大的数据库的解决方案,并且已经成功用于高苛刻生产环境多年。
尽管MySQL仍在开发中,但它已经提供一个丰富和极其有用的功能集。
它的连接性、速度和安全性使MySQL非常适合访问在Internet上的数据库。
MySQL服务器工作在客户/服务器或嵌入系统中
MySQL数据库服务器是一个客户/服务器系统,它由多线程SQL服务器组成,支持不同的后端、多个不同的客户程序和库、管理工具和广泛的应用程序接口(APIs)。
MySQL也可以是一个嵌入的多线程库,你可以把它连接到你的应用中而得到一个小、快且易于管理的产品。
有大量的MySQL软件可以使用,幸运的是,你可以找到你所喜爱的已经支持MySQL数据库服务器的软件和语言。
MySQL的官方发音是“MyEssQueEll”,而不是“Mysequel”。
但是你也可以使用“Mysequel”和其他的方言。
3需求分析
学生管理系统是对学生进行查询、添加、修改、删除的系统,整个系统,不仅要求可以查询学生信息,而且还要求可以对学生信息进行修改、删除,同时还可以对新来的学生进行添加操作。
系统需要管理员对其进行管理,为了使系统能够达到一定的安全性,必须有登录页面,管理员通过登录页面的登录验证,登录到系统,然后才有权限对学生进行管理操作。
登录功能的需求:
管理员需要通过在登录页面输入自己的账号密码,登录验证,然后进入到主界面。
查询功能的需求:
在查询输入框里面,输入学生姓名,然后进行查询,查询戒过在主界面显示。
添加功能的需求:
点击“插入学生”,然后调用插入学生界面,录入学生信息,点击“插入”,插入成功后,页面会提示“插入成功”,然后在系统给定时间内,跳回到主界面。
修改功能的需求:
点击“修改学生”,进入到修改界面,对学生信息修改后,然后点击确定修改,修改成功以后会有提示,然后跳回主界面。
删除功能的需求:
点击删除学生,然后实现对指定学生的删除,删除成功后给予删除成功或失败的提示。
学生管理系统,主要是管理学生信息,基本功能就是查询、添加、修改和删除。
与之对应的数据库需求,要求满足系统需求,主要有两个表:
管理员表和学生信息表。
系统流程图如下:
4设计与实现
4.1系统界面设计
主界面:
登陆界面:
4.2数据库设计:
学生信息表:
名称
类型
是否为空
是否主键
productid
int(11)
否
是
productname
varchar(255)
是
否
price
float
是
否
remark
varchar(255)
是
否
registerdate
datetime
是
否
categoryid
int(11)
是
否
管理员表:
名称
类型
是否为空
是否主键
categroyid
int(11)
否
是
categroyname
varchar(255)
是
否
系别表:
名称
类型
是否为空
是否主键
userid
int(11)
否
是
username
varchar(255)
是
否
password
varchar(255)
是
否
5测试
查询测试:
查询成功:
添加测试:
修改测试:
删除测试:
操作成功
6总结
在前期准备过程中,先策划好自己的网站及相关的各个网页所要表达的内容,主要实现哪些功能,如用户登录,学生查找,这些功能是由什么样的jsp或javabean实现的,在编写好这些功能后,又是怎么样在各个页面html中插入这些实现功能的代码,是用脚本呢还是用调用,这些都是我们事先要考虑的问题,只有这样我们考虑周到了,明白了,才能顺利实现更多的功能,达到事半功倍的效果。
再一个主要任务是在网上搜集有关的信息和图片,并参考借鉴别人的网站布局和功能,来规划美化自己的网页页面的设置风格。
课程设计真的有点累.然而,当我着手清理自己的设计成果,漫漫回味这3周的心路历程,一种少有的成功喜悦即刻使倦意顿消。
虽然这是我刚学会走完的第一步,也是人生的一点小小的胜利,然而它令我感到自己成熟的许多,另外我有了一中“春眠不知晓”的感悟。
通过课程设计,使我深深体会到,干任何事都必须耐心,细致.课程设计过程中,许多计算有时不免令我感到有些心烦意乱:
有2次因为不小心我计算出错,只能毫不情意地重来.但一想起徐洪章平时对我们耐心的教导,想到今后自己应当承担的社会责任,想到世界上因为某些细小失误而出现的令世人无比震惊的事故,我不禁时刻提示自己,一定呀养成一种高度负责,认真对待的良好习惯.这次课程设计使我在工作作风上得到了一次难得的磨练。
短短三周是课程设计,使我发现了自己所掌握的知识是真正如此的缺乏,自己综合应用所学的专业知识能力是如此的不足,几年来的学习了那么多的课程,今天才知道自己并不会用。
想到这里,我真的心急了,老师却对我说,这说明课程设计确实使我你有收获了。
老师的亲切鼓励了我的信心,使我更加自信。
最后,我要感谢我的老师们,是您严厉批评唤醒了我,是您的敬业精神感动了我,是您的教诲启发了我,是您的期望鼓励了我,我感谢老师您今天又为我增添了一幅坚硬的翅膀。
今天我为你们而骄傲,明天你们为我而自豪。
参考文献
[1]朱少民.软件测试方法和技术[M].北京:
清华大学出版社,2005.
[2]赵斌.软件测试技术经典教程[M].北京:
科学出版社,2007.
[3]刘德宝.软件测试工程师培训教程[M].北京:
中科院新科海学校,2008.
[4]郑人杰.计算机软件测试技术[M].北京:
清华大学出版社,1990.
[5]IanSommerville.软件工程[M].中信出版社,2006.
[6]贺平.软件测试教程[M].北京:
北京电子工业出版社,2005.
[7]何新权.全国计算机等级考试四级教程软件测试工程师[M].北京:
高等教育出版,2010.
[8]段念.软件性能测试过程详解与案例剖析[M].北京:
清华大学出版社,2006.
[9]刘策群.LoadRunner和软件项目性能测试[M].北京:
机械工业出版社,2008
[10]《J2EE编程技术》郝玉龙,北方交大出版
[11]《Java程序设计》朱喜福,人民邮电出版
[12]《J2EE案例开发》季民,中国水利水电出版
[13]《Java网络编程》冯博,清华大学出版
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)